PHP轉義Json里的特殊字符的函數

常用方法
服務器君一共花費了117.510 ms進行了5次數據庫查詢,努力地為您提供了這個頁面。
試試閱讀模式?希望聽取您的建議

在給一個 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.snpmgr.live/librarys/veda/detail/2719,歡迎訪問原出處。

不打個分嗎?

轉載隨意,但請帶上本文地址:

http://www.snpmgr.live/librarys/veda/detail/2719

如果你認為這篇文章值得更多人閱讀,歡迎使用下面的分享功能。
小提示:您可以按快捷鍵 Ctrl + D,或點此 加入收藏。

大家都在看

閱讀一百本計算機著作吧,少年

很多人覺得自己技術進步很慢,學習效率低,我覺得一個重要原因是看的書少了。多少是多呢?起碼得看3、4、5、6米吧。給個具體的數量,那就100本書吧。很多人知識結構不好而且不系統,因為在特定領域有一個足夠量的知識量+足夠良好的知識結構,系統化以后就足以應對大量未曾遇到過的問題。

奉勸自學者:構建特定領域的知識結構體系的路徑中再也沒有比學習該專業的專業課程更好的了。如果我的知識結構體系足以囊括面試官的大部分甚至吞并他的知識結構體系的話,讀到他言語中的一個詞我們就已經知道他要表達什么,我們可以讓他坐“上位”畢竟他是面試官,但是在知識結構體系以及心理上我們就居高臨下。

所以,閱讀一百本計算機著作吧,少年!

《軟件隨想錄:程序員部落酋長Joel談軟件》 Joel Spolsky (作者), 阮一峰 (譯者)

《軟件隨想錄:程序員部落酋長Joel談軟件》是一部關于軟件技術、人才、創業和企業管理的隨想文集,作者以詼諧幽默的筆觸將自己在軟件行業的親身感悟娓娓道來,觀點新穎獨特,內容簡潔實用。全書分為 36講,每一講都是一個獨立的專題?!盾浖S想錄:程序員部落酋長Joel談軟件》從不同側面滿足了軟件開發人員、設計人員、管理人員及從事軟件相關工作的人員的學習與工作需要。

更多計算機寶庫...

燃烧吧足球登陆 闲来广东麻将 股市行情京东方 湖南麻将公式 澳洲彩票幸运10app下载 日本sm女王调教男奴 炒股达人app 遇乐棋牌大厅vip 4399小游戏四人打麻将 大乐透出号走势图 广东麻将平台 东方财富网首页 开元国际棋牌官方下载 河北快3大小奇偶走势图 sg飞艇官网开奖 广西快乐十分 安徵11选5走势图