當我在php中使用substr()函數時,當最後一個字符是字符串時,我在字符串的末尾得到一個問號(帶有questionmark的正方形 - 取決於瀏覽器)像ë或ö等特殊的...具有特殊字符的php substr導致questionmarks
$introtext=html_entity_decode($item->description, ENT_QUOTES, "UTF-8");
$introtext=substr($introtext,0,200);
我該如何逃避?提前致謝!
當我在php中使用substr()函數時,當最後一個字符是字符串時,我在字符串的末尾得到一個問號(帶有questionmark的正方形 - 取決於瀏覽器)像ë或ö等特殊的...具有特殊字符的php substr導致questionmarks
$introtext=html_entity_decode($item->description, ENT_QUOTES, "UTF-8");
$introtext=substr($introtext,0,200);
我該如何逃避?提前致謝!
如果字符串包含多字節編碼(如UTF-8),則應該使用mb_substr
避免這樣的問題:
$introtext=mb_substr($introtext,0,200);
在有人的情況下,上述嘗試,仍然沒有工作,
嘗試在mb_substr添加Unicode的名稱,如
$introtext=mb_substr($introtext, 0, 200, 'utf-8');
接受的答案沒有爲我工作,我需要你的方式讓它與斯堪的納維亞人物一起工作。謝謝 – EspeH 2015-08-20 18:37:22
謝謝!還不知道那個功能。我現在工作正常! – Bert 2011-06-06 20:55:54
太棒了!按預期工作:) – Can 2015-07-21 19:16:38
這不適用於斯堪的納維亞像åäö字母,需要添加utf-8像Sruit A.Suk建議 – EspeH 2015-08-20 18:38:32