php清除bom頭的方法:1、使用「trim($result, "\xEF\xBB\xBF");」方式去除BOM頭;2、透過「@iconv("GBK", " UTF-8//IGNORE", $result);」方式去除BOM頭。
本文操作環境:Windows7系統、PHP7.1版,Dell G3電腦
php怎麼清除bom頭?
PHP去除BOM頭的方法
BOM頭是UTF-8來告訴編輯器:我是UTF8編碼。它的編碼是\xEF\xBB\xBF
但是PHP在設計之初並沒有考慮到BOM頭的問題,所以在編解碼的時候很容易出現問題
#例如今天遇到的問題,json_decode,當解碼的string有BOM頭的時候json_decode就解析失敗,回傳NULL。 (為什麼不自動偵測並去除BOM頭呢。。。小吐槽)
試了兩種方式可以去除掉:
$result = trim($result, "\xEF\xBB\xBF"); print_r(json_decode($result, true)); exit;
##還有一種比較矬:
$result = @iconv("UTF-8", "GBK//IGNORE", $result); $result = @iconv("GBK", "UTF-8//IGNORE", $result); print_r(json_decode($result, true)); exit;
推薦學習:《PHP影片教學》
以上是php怎麼清除bom頭的詳細內容。更多資訊請關注PHP中文網其他相關文章!