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 />"; }?>
代码如上所示,输出来的是一串乱码。
网站:http://1.alilo.sinaapp.com/Weather/Weather.php
回复讨论(解决方案)
你在一个页面中输出了两种类型的数据,浏览器不知道怎么把他们分开。于是就 乱码了
你需要将
$wea = "http://1.alilo.sinaapp.com/Weather/0.jpeg";
$weai = imagecreatefromgif($wea);
header("Content-type:image/jpeg");
imagejpeg($weai);
改为
echo '';
如果你确实想通过抓取图片的方式了完成,那么需要将那4行单独写成文件,比如 wea.php
然后通过标记
去调用
你在一个页面中输出了两种类型的数据,浏览器不知道怎么把他们分开。于是就 乱码了
你需要将
$wea = "http://1.alilo.sinaapp.com/Weather/0.jpeg";
$weai = imagecreatefromgif($wea);
header("Content-type:image/jpeg");
imagejpeg($weai);
改为
echo '';
如果你确实想通过抓取图片的方式了完成,那么需要将那4行单独写成文件,比如 wea.php
然后通过标记
去调用
这一节功能是不要的,是我后面加上去测试用,主要是“foreach”后面的代码。按照你的改玩以后,foreach的代码还是显示乱码,求解。。
你不都是
$img = imagecreatefromgif($path);
header("Content-type:image/gif");
imagegif($img);
这样的吗?
一样的问题就不会举一反三吗?
<meta charset="UTF-8"><?php //城市名 $city = "长沙"; //获取json格式的数据 $string ="http://api.map.baidu.com/telematics/v3/weather?location=".$city."&output=json&ak=KXrZyXh5wUSBEdo5TkgRQkBz"; $str = file_get_contents($string); //echo $str; //对json格式的字符串进行编码 $arr = json_decode($str,TRUE); foreach($arr['results'][0]['weather_data']as $val) { echo $val['date']."<br/>"; echo "天气:{$val['weather']}<br/>"; $path = "{$val['dayPictureUrl']}"; echo '<img src="/static/imghw/default1.png" data-src="'.$path.'" class="lazy" .$path.'" alt="php调用图片乱码问题" >'; echo "<br/>"; echo "<br/>"; // echo "< img src = "{$val['dayPictureUrl']}" />"; echo "风向:{$val['wind']}<br/>"; echo "温度:{$val['temperature']}<br/><br />"; } ?>
<meta charset="UTF-8"><?php //城市名 $city = "长沙"; //获取json格式的数据 $string ="http://api.map.baidu.com/telematics/v3/weather?location=".$city."&output=json&ak=KXrZyXh5wUSBEdo5TkgRQkBz"; $str = file_get_contents($string); //echo $str; //对json格式的字符串进行编码 $arr = json_decode($str,TRUE); foreach($arr['results'][0]['weather_data']as $val) { echo $val['date']."<br/>"; echo "天气:{$val['weather']}<br/>"; $path = "{$val['dayPictureUrl']}"; echo '<img src="/static/imghw/default1.png" data-src="'.$path.'" class="lazy" .$path.'" alt="php调用图片乱码问题" >'; echo "<br/>"; echo "<br/>"; // echo "< img src = "{$val['dayPictureUrl']}" />"; echo "风向:{$val['wind']}<br/>"; echo "温度:{$val['temperature']}<br/><br />"; } ?>
原来是这一句少了个单引号!echo '


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...
