·设为首页收藏本站📧邮箱修改🎁免费下载专区💎积分✅卡密📒收藏夹👽聊天室
返回列表 发布新帖

PHP json读不出问题

332 6
发表于 2023-5-8 18:08:00 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
http://teyoule.com/friendphp/urlword.php?web=www.teyoule.com
网址输出下面:

{"url":"www.teyoule.com","key":"\u5c55\u4f1a\u8bbe\u8ba12"}

我的网站用
$json=file_get_contents("
http://teyoule.com/friendphp/urlword.php?web=www.teyoule.com");
$array = json_decode($json,TRUE);
print_r($array);

输出空白,读取不出来,帮找找是什么原因
我要说一句 收起回复
创宇盾启航版免费网站防御网站加速服务

评论6

婷姐楼主Lv.8 发表于 2023-5-8 18:08:50 | 查看全部
用curl 加上浏览器useragent请求
我要说一句 收起回复
拾光Lv.8 发表于 2023-5-8 18:09:37 | 查看全部
先print_r($json)看看 有没有抓取到数据
我要说一句 收起回复
拾光Lv.8 发表于 2023-5-8 18:09:48 | 查看全部
不懂帮你顶顶
我要说一句 收起回复
拾光Lv.8 发表于 2023-5-8 18:10:39 | 查看全部
是echo $json;,不是print_r,因为抓取过来的是json字符串不是数组。print_r只能在json_decode之后才能用
我要说一句 收起回复
TyCodingLv.8 发表于 2023-5-8 18:10:51 | 查看全部
【最佳答案来了】


在$json=file_get_contents("http://teyoule.com/friendphp/urlword.php?web=www.teyoule.com");后我判断$json发现比实际字符长度多了6,检查发现抓取到的字符串的开头和结尾各有3个字节的BOM头,应该是做这个网站的人在windows下用记事本修改过网页文件导致的,通过$json = str_replace("\xEF\xBB\xBF", '', $json);将$json变量中的BOM头移除后即可正常解析json了,代码如下:
  1. <?php$json=file_get_contents("http://teyoule.com/friendphp/urlword.php?web=www.teyoule.com");$json = str_replace("\xEF\xBB\xBF", '', $json);$array = json_decode($json,TRUE);print_r($array);
复制代码
我要说一句 收起回复
拾光Lv.8 发表于 2023-5-8 18:11:21 | 查看全部
不懂帮你顶顶
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

图文热点
创宇盾启航版免费网站防御网站加速服务
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:18.191.218.252,GMT+8, 2024-11-14 11:30 , Processed in 0.514135 second(s), 108 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2024 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表