最近將使用爬蟲爬取的鏈接保存到 mysql 數據庫中時,發現我將鏈接使用 json_encode 保存時候,在數據庫中卻顯示了轉義字符,我並不需要這轉義的,看起來不清晰而且占用存儲空間。
后來發現在默認的情況之下使用 json_encode 對數組進行 json 格式的轉換時候會自動的將數據中含有斜杠的字符串進行轉義,但是我們往往有的時候不需要葯對它們進行轉義的,本文說說如何使用 json_encode 不自動轉義斜杠。
對於如下數組 $a,現有兩種辦法解決:
$a
=
array
(
);
其一,正則替換:
$a = str_replace("\\/", "/", json_encode($a));
var_dump($a);
其二,若 php 版本是 5.4 及以上的話:
var_dump(json_encode($a,JSON_UNESCAPED_SLASHES));