ホームページ >バックエンド開発 >PHPチュートリアル >PHPを呼び出すときに画像が文字化けする問題
<meta charset="UTF-8"><?php //城市名 $city = '长沙'; //获取json格式的数据 $str = file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=".$city."&output=json&ak=KXrZyXh5wUSBEdo5TkgRQkBz"); //对json格式的字符串进行编码 $arr = json_decode($str,TRUE); echo "城市:".$arr['results'][0]['currentCity']." 日期:".$arr['date']."<br /><br />"; $wea = "http://1.alilo.sinaapp.com/Weather/0.jpeg"; $weai = imagecreatefromgif($wea); header("Content-type:image/jpeg"); imagejpeg($weai); foreach($arr['results'][0]['weather_data']as $val) { echo $val['date']."<br/>"; echo "天气:{$val['weather']}<br/>"; $path = "{$val['dayPictureUrl']}"; echo "$path"; $imgInfo = getimagesize($path); $imgType = $imgInfo[2]; switch ($imgType) { case 1: $img = imagecreatefromgif($path); header("Content-type:image/gif"); imagegif($img); break; case 2 : $img = imagecreatefromjpeg($path); header("Content-type:image/jpeg"); imagejpeg($img); break; case 3 : $img = imagecreatefrompng($path); header("Content-type:image/png"); imagepng($img); break; default: exit("图片格式不支持"); } echo "<br/>"; // echo "< img src = "{$val['dayPictureUrl']}" />"; echo "风向:{$val['wind']}<br/>"; echo "温度:{$val['temperature']}<br/><br />"; }?>
あなた2 種類のデータが 1 ページに出力されますが、ブラウザーはそれらを分離する方法を知りません。したがって、文字化け
$wea = "http://1.alilo.sinaapp.com/Weather/0.jpeg"; を変更する必要があります。 = imagecreatefromgif($wea);
header("Content-type:image/jpeg");
echo '6e94304a6f2680d442950379734d23d7';
本当に画像を取得して完了したい場合は、これらの 4 行を別のファイルに書き込む必要があります。 wea.php
のように、
を呼び出して、1 つのページに 2 種類のデータを出力します。ブラウザ それらを分離する方法がわかりません。したがって、
文字化け
$wea = "http://1.alilo.sinaapp.com/Weather/0.jpeg"; を変更する必要があります。 = imagecreatefromgif($wea); header("Content-type:image/jpeg"); echo '6e94304a6f2680d442950379734d23d7';
本当に画像を取得して完了したい場合は、これらの 4 行を別のファイルに書き込む必要があります。 wea.php
次に、
を呼び出します。この関数はテストのために後で追加しました。 . 、主に「foreach」の背後にあるコードです。変更を加えた後も、foreach コードでは文字化けが表示されます。解決してください。 。
皆さんもそうですか?
$img = imagecreatefromgif($path);
header("Content-type:image/gif"); 🎜>そうですか?
同じ問題について推論をしてみませんか?
この文には一重引用符が欠けていることがわかりました。 echo '7bc456427b28b97ed73a1f0058145557'; ありがとうございます。