リモート XML のロード中に PHP エラーが発生しましたか? ? ?
$yinyue=$_GET['yinyue'].'$$';
if ($_GET['geshou']=="") {
$a= "";}
else{
$a="$$$$";}
$geshou=$_GET['geshou'].$a;
$music='http:/ / /box.zhangmen.baidu.com/x?op=12&count=1&title='.$yinyue.$geshou;
?>
//の名前を設定XML ファイル
$file ="$music";
//ファイル
$xml = simplexml_load_file($file) または die ("XML ファイルをロードできません!"); i =0 ; $i
{
$a = $xml->url[$i]->encode;
= $xml->url[$i]->decode;
$c = substr($a,0,strrpos($a,'/')+1);
$result = trim( $ c).trim($b);
echo $result.'
';
}
?>
リモート XML で必要なものをローカルで取得できます。しかし、サーバースペースにアップロードするとエラーが発生しますか? ? ?なぜ
警告: simplexml_load_file() [function.simplexml-load-file]: http://box.zhangmen.baidu.com/x?op=12&count=1&title=%E9%85%B7% E7 %88%B1%24%24:1: パーサー エラー: エンコーディングの切り替え: /home/xintutuc/public_html/y/music.php の 22 行目でエンコーダー エラー
-- - ---解決策--------------------一部の文字が文字化けする可能性があるため、正しいエンコードが必要です。
------解決策----------------------ローカルとサーバーのエンコーディングが異なります。
gb2312 と utf-8 を変換してみてください。
------解決策----------------------$s = str_replace('encoding="gb2312 " ', 'encoding="utf-8"', file_get_contents($file));
$xml = simplexml_load_string($s) or die ("XML ファイルをロードできません!");
サーバーの PHP バージョンが低いです
ローカルでデバッグする場合、不要なトラブルを避けるために、サーバーと同じ PHP バージョンと設定を使用することが最善です。
------解決策---------