我一直在尋找UTF8安全的替代字符串操作函數。我發現了很多不同的意見和建議。我想問問下面的函數是否會導致UTF-8出現問題,如果有,我應該用什麼來代替。我知道PHP手冊中mb_前綴函數的列表,但並不是我正在使用的所有函數。PHP多字節替代UTF8
功能有:內爆,爆炸,str_replace函數,的preg_match,preg_replace函數
謝謝
我一直在尋找UTF8安全的替代字符串操作函數。我發現了很多不同的意見和建議。我想問問下面的函數是否會導致UTF-8出現問題,如果有,我應該用什麼來代替。我知道PHP手冊中mb_前綴函數的列表,但並不是我正在使用的所有函數。PHP多字節替代UTF8
功能有:內爆,爆炸,str_replace函數,的preg_match,preg_replace函數
謝謝
explode
只是尋找一個相同的字節序列,並在該點分開字符串。由於UTF-8安全地向後兼容ASCII,因此不用擔心,它可以正常工作。 implode
只是將字符串組合在一起,由於UTF-8的屬性,它也可以正常工作。 str_replace
的工作原因相同。只要您使用/u
modifier,preg_
函數就可以正常工作。
'preg_'系列函數可以與unicode一起工作,但您需要在參數中指定您在字符串中使用unicode。 –
@AleksG感謝您的回覆。你知道爆炸,爆炸和str_replace是什麼嗎? – sczdavos
這些都是UTF-8安全的,只要所有內容都是有效的UTF-8。沒有有效的UTF-8字節序列是某些其他UTF-8字節序列的子字節字符串。 – Esailija