PHP JSON_decode 返回為 null 問題

毛仔發表於2018-12-13

解決方案

<?php
$html=file_get_contents("http://pad.skyozora.com/data/pets.json");
$html=preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $html);
var_dump(json_decode($html, true));
var_dump(json_last_error());
?>

問題原因

因為 API 是 aspx、ashx, 可能會有 BOM(回傳有中文), 於是使用此篇 "PHP 判斷/移除 BOM(UTF-8)" 的 方法 先將 $json_data 過濾一次, 再來解析就行了

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章