與strpos()相反,iconv_strpos()的返回值是出現在指針前面的字符數,而不是以字節爲單位的指針找到位置的偏移量。 (來源:http://www.php.net/manual/en/function.iconv-strpos.php)爲什麼使用iconv_strpos而不是strpos?
下面的代碼示例顯示了iconv_strpos()
和strpos()
返回相同的值。
$string = "dd.MM.yy";
echo "d: ".strpos($string, 'd'); // 0
echo "M: ".strpos($string, 'M'); // 3
echo "y: ".strpos($string, 'y'); // 6
echo "d: ".iconv_strpos($string, 'd'); // 0
echo "M: ".iconv_strpos($string, 'M'); // 3
echo "y: ".iconv_strpos($string, 'y'); // 6
爲什麼要用iconv_strpos代替strpos?
你有沒有試過處理「АБВГДЕЖЗИЈКЛЉМНЊОПРСТЋУФХЦЧЏШ」這樣的文字?如果你使用strpos()從數據庫(UTF8)得到這樣的東西,將不會解決獲取特定字符位置的問題。如果試圖獲取非ANSI字符串的位置,請不要使用strpos()。 – Wh1T3h4Ck5 2011-03-31 13:07:51