PHP curl获取JSON转换数组失败 BOM头去除

    选择打赏方式

日常在集成接口的时候可能会发现PHP curl到API传来的JSON数据后,通过json_decode却无法将获得的这个json转换成PHP数组;

这种情况下,要么是对方的传递的不是正规的json数据,可能多了些什么奇奇怪怪的东西,比如多了些括号什么的或者是对方的数据内存在BOM头;

1.手动请求该接口,将得到数据去网上的在线格式化json验证json是否规范。

2.得到json后清理BOM头在进行json_decode

<?php
// $output为通过curl抓取后得到的数据
if (preg_match('/^\xEF\xBB\xBF/', $output)) {
    $output = substr($output, 3);
}
$info = json_decode(trim($output), true);

版权声明:若无特殊注明,本文为《傲世》原创,转载请保留文章出处。
本文链接:https://www.recho.cn/193.html
如您对本文章内容有所疑问、反馈或补充,欢迎通过邮箱:admin@h2fast.cn 联系我们!
正文到此结束

热门推荐