PHP通过CURL的方式读取图片接口输出乱码
1. GD库做的图片
用 GD库做的图片,并输出到浏览器上
<?php
$file = imagecreate(100,50);
$color = imagecolorallocate($file,255,255,255);
$c = imagecolorallocate($file,0,100,255);
imagefill($file, 0, 0, $c);
imagechar($file, 10, 20, 20,'pk',$color);
imagechar($file, 10, 40, 20,'h', $color);
imagechar($file, 10, 60, 20,'p', $color);
header('Content-Type:image/png');
imagepng($file);
页面效果
2. 请求图片接口,使用 base64_encode() 函数处理
<?php
$url = 'http://127.0.0.1/1.php';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
$data='image/png;base64,'.base64_encode($output);
echo '<img src="data:'.$data.'">';
curl_close($ch);
页面效果
3. 错误示例
接口返回的是二进制流的数据,所以直接打印会乱码
<?php
$url = 'http://127.0.0.1/1.php';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
// 直接打印会乱码
var_dump($output);
curl_close($ch);
乱码现象
本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!
从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!
本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。
本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。
若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。