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
正文到此结束

热门推荐

发表吐槽

匿名评论 请叫我雷锋~

你还可以输入 250 / 250 个字

呵呵 哈哈 吐舌 开心 笑眼 可怜 乖 啊 你懂得 不高兴 生气 汗 黑线 哭 真棒 阴险 鄙视 酷 滑稽 纳尼 疑问 委屈 惊讶 勉强

评论信息框
可使用QQ号实时获取头像自动填写

私密评论

吃奶的力气提交吐槽中...


竟然没有人吐槽,快赶紧抢沙发吧!