1

以下のコードで問題が発生しています。このファイルをブラウザから実行するとload_file($target_url); foreach($html->find(‘a’) as $link){ echo $link->href." "; } ?>、ブラウザに同じコードが表示され、目的の結果ではありません。私はxamppを使用してWebサイトに取り組んでいます。PHPも適切に構成されています。

<?php
 include_once('/simple.php');

 $target_url = "http://www.example.com/";
 $html = new simple_html_dom();
 $html->load_file($target_url);
 foreach($html->find(‘a’) as $link){
 echo $link->href."<br />";
 }
 ?>
4

3 に答える 3

0

コードを実行するのではなく、単純にブラウザに出力しているため、PHP またはサーバーが適切に構成されていません。

以下のコードしか表示されないload_file()のは、ブラウザ>がその行の を HTML の終了タグとして解釈するためです。ブラウザで [表示] → [ソース] を選択すると、完全なコードが表示されます。

于 2012-11-30T09:44:44.970 に答える
0

カーリーの引用符!カーリーの引用符!

それらは、ファイルが間違ったプログラム (Word???) によって「処理」されたことを示しているため、通常、これらの厄介なソフトウェアによって変更される別の文字があり、それはDASH (-)! です。$html->load のダッシュはおそらく実際のダッシュ "-" ではなく、長いダッシュ "—" のような似たような文字です。違いを見てください:

----------
real dashes -

––––––––––
alternate dash –

何らかの理由で、一部のパーサー (ftp?webserver?php?) がこの予期しない文字によって混乱し、? を出力します。代わりは!

この ?> の近くに ?> が表示され、PHP が閉じられます!!!

適切なエディターを使用してファイルを書き直し、ダッシュを削除して再度書き込むだけで機能します。

于 2012-11-30T12:06:06.613 に答える
0

何らかの理由で、PHP パーサーが $html->load_file( の -> を PHP の解析を閉じるように解釈し、残りのコードを HTML として表示しているようです。

それは -> あたかも ?> であるかのように解釈します

サーバーの設定が間違っているか、奇妙なオプションが有効になっている可能性があります。

他の PHP ファイルが含まれていない場合は正常に動作する可能性があります -> オブジェクトを使用していない場合

サーバーで許可されている場合は、別の構文を試すことができます。

<script language="php">  
echo "This is HTML script tags.";  
</script> 

または ASP スタイルの構文

<%   
echo 'This is ASP like style';  
%>

醜いですが、それはあなたの問題を解決するかもしれません

于 2012-11-30T09:47:15.280 に答える