PHP轉義Json裡的特殊字元的函數
在給一個 App 做 API,從伺服器端的 MySQL 取出資料,然後產生 JSON。資料中有個欄位叫 content,裡面儲存了文章內容,含有大量 HTML 標籤,這個欄位在轉 json 的時候需要轉義,因為有大量的特殊字元會破壞 json 的結構。
比如這麼一段 content:
'Lorem ipsum "dolor" sit amet, consectetur \ adipiscing elit.'
則必須要轉化為:
Lorem ipsum \"dolor\" sit amet,\nconsectetur \\ adipiscing elit.
那麼有哪些字元是需要轉義的呢?看:
如果 PHP 版本 > 5.2,json_encode 內建轉義。如果是舊版本的 PHP 則可以用下面的函數。
# list from www.json.org: (\b backspace, \f formfeed)public function escapeJsonString($value) { $escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c");$replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b");$result = str_replace($escapers, $replacements, $value);return $result;}
經常會用到,記錄一下,希望對你有協助。
http://www.bkjia.com/PHPjc/951262.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/951262.htmlTechArticlePHP轉義Json裡的特殊字元的函數 在給一個 App 做 API,從伺服器端的 MySQL 取出資料,然後產生 JSON。資料中有個欄位叫 content,裡面儲存了文章...