剛剛無聊研究了一下Password Salt,
沒想到晃著晃著就晃到中文字串切割問題,
(這兩個應該沒什麼太大關係吧XD...)
看著看著就想到以前自己在實作時,
的確有碰到這個問題XD...
沒想到今天誤打誤撞就得到解決辦法~
以前寫法:
$content="A,會亂碼嘛?@.@不會了啦XD...";
echo substr($content,0,21).'<BR>';
輸出結果:A,會亂碼嘛?@.@不會了�
正確寫法:
$content="A,會亂碼嘛?@.@不會了啦XD...";
echo mb_substr($content,0,11,"UTF-8");
輸出結果:A,會亂碼嘛?@.@不
其實會亂碼的原因在於中文字是佔2byte,
而英文是一個字佔1byte
所以如果使用單純字串切割,
將有可能會出現亂碼的情況~
用mb_substr的話會將一個字當作一個單位,
且不會管是否是中文還是英文喔~
不過要注意的是,
要注意一下你的網站編碼哦~
如果弄錯了,
還是會有亂碼的情況發生哦 : )
2010年5月1日 星期六
[php]解決中文字串切割亂碼問題
訂閱:
張貼留言 (Atom)
沒有留言:
Write 意見