php去掉json反斜杠的實例講解

1、通過“stripslashes($_POST[‘json’]);”方法刪除反斜杠。

2、通過“json_decode”對JSON格式的字符串進行解碼即可。

通過AJAX傳到PHP的json字符串有時候加上反斜杠”\”來轉義,PHP處理時需要先去掉反斜杠,然後再json_decode。

$str = stripslashes($_POST['json']);$arr = json_decode($str,true);

stripslashes() 函數:刪除由 addslashes() 函數添加的反斜杠。

json_decode :對 JSON 格式的字符串進行解碼。

知識點擴展:

PHP中讓json_encode不自動轉義斜杠“/”的方法

最近將使用爬蟲爬取的鏈接保存到 mysql 數據庫中時,發現我將鏈接使用 json_encode 保存時候,在數據庫中卻顯示瞭轉義字符,我並不需要這轉義的,看起來不清晰而且占用存儲空間。

後來發現在默認的情況之下使用 json_encode 對數組進行 json 格式的轉換時候會自動的將數據中含有斜杠的字符串進行轉義,但是我們往往有的時候不需要藥對它們進行轉義的,本文說說如何使用 json_encode 不自動轉義斜杠。

對於如下數組 $a,現有兩種辦法解決:

$a = array(
 '//www.jb51.net,
 '//www.jb51.net,
 '//www.jb51.net,
 '//www.jb51.net,
 '//www.jb51.net
);

其一,正則替換:

$a = str_replace("\\/", "/", json_encode($a));
var_dump($a);

其二,若 php 版本是 5.4 及以上的話:

var_dump(json_encode($a,JSON_UNESCAPED_SLASHES));

到此這篇關於php去掉json反斜杠的實例講解的文章就介紹到這瞭,更多相關php去掉json反斜杠的方法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: