Re: [請益] 比對16進位編碼
今天特別涼,所以再寫個小程式
http://paste.org/49868
程式以manifest()函數為中心,附有彩色標示-如果你真的拿去執行的話
用處是把字串內的字元個別拆開,顯示hex code
一共展示三個字串
$str = "<p>\xc2\xa0</p><p>我是測試字串</p>";
$str2 = str_replace("\xC2\xA0", '', $str);
$str3 = preg_replace("/\xC2\xA0/i", '', $str);
manifest($str);
manifest($str2);
manifest($str3);
結果見以下附錄,不管任何一種寫法都可以去掉\xC2\xA0
不過這裡的\xC2\xA0可以算是人為插進去的
所以未必有真正複製原po遇到的狀況。
但一般而言,去掉無法顯示的特殊字元方法也就如此。
又者,c2 a0在utf-8中定義為non-breaking space。
所以這是否亂碼?視你的unicode支援如何而定。
(附錄)執行結果
<p>?</p><p>我是測試字串</p>
< (3c) p (70) > (3e) ? (c2 a0) < (3c) / (2f) p (70)
> (3e) < (3c) p (70) > (3e) 我 (e6 88 91) 是 (e6 98 af)
測 (e6 b8 ac) 試 (e8 a9 a6) 字 (e5 ad 97)
串 (e4 b8 b2) < (3c) / (2f) p (70) > (3e)
<p></p><p>我是測試字串</p>
< (3c) p (70) > (3e) < (3c) / (2f) p (70) > (3e) < (3c)
p (70) > (3e) 我 (e6 88 91) 是 (e6 98 af)
測 (e6 b8 ac) 試 (e8 a9 a6) 字 (e5 ad 97)
串 (e4 b8 b2) < (3c) / (2f) p (70) > (3e)
<p></p><p>我是測試字串</p>
< (3c) p (70) > (3e) < (3c) / (2f) p (70) > (3e) < (3c)
p (70) > (3e) 我 (e6 88 91) 是 (e6 98 af)
測 (e6 b8 ac) 試 (e8 a9 a6) 字 (e5 ad 97)
串 (e4 b8 b2) < (3c) / (2f) p (70) > (3e)
--
Google 關鍵字 : MPFC-TCP / 殺人笑話 / 包租婆也有過當羅莉的時候
Youtube關鍵字 : 脫衫脫褲 / 傻蛋奧運 / 宗教審訊 / 買張床 / 單車超人 / 謳歌金錢
*美髮師登山隊 http://tinyurl.com/dm6lh3 *Ypres 1914 http://tinyurl.com/b432jb
[蒙帝派松正體中文計畫] http://www.youtube.com/user/JamesBondXD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.12.174
推
05/30 16:57, , 1F
05/30 16:57, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
0
9
PHP 近期熱門文章
PTT數位生活區 即時熱門文章