我有一堆字符串與不同的字符集。變量$charset
包含當前字符串的字符集。安全地使用UTF-8字符串的strpos?
$content = iconv($charset, 'UTF-8', $content);
完成這一操作,是可以安全使用的strpos
,strlen
,substr
諸如此類,而不是他們多字節等同?我問這個,因爲我也使用preg_match
。因此,如果我使用PREG_OFFSET_CAPTURE
來獲取字符串中單詞的位置,我不能使用該值與mb_substr
來刪除單詞前的所有內容。
所以,如果我通過使用'prey_match'來獲得單詞的位置,你可以說這是一種「安全」的方式?意思是不可能切成多字節字符。 –
是的,如果你得到一個字符的位置作爲字節偏移量,並在那個點和其他地方完全切斷,那麼在UTF-8編碼中這是一個安全的操作。 – deceze