4
爲什麼下面的代碼對於不同的多字符串行爲不同?多字節字符串和環視奇怪錯誤
echo preg_replace('@(?=\pL)@u', '*', 'م'); // prints: '*م' ✓
echo preg_replace('@(?=\pL)@u', '*', 'ض'); // prints: '*ض' ✓
echo preg_replace('@(?=\pL)@u', '*', 'غ'); // prints: '*�*�' ✗
echo preg_replace('@(?=\pL)@u', '*', 'ص'); // prints: '*�*�' ✗
它不會識別'غ'字符。恕我直言,它看起來像一個PCRE庫中的錯誤,但作爲PHP,很難說你是否需要啓用某些東西...... – 2013-02-18 17:09:07
這工作正常:echo preg_replace('/(.+)/','* $ 1' ,'غ'); – 2013-02-18 18:06:25
奇怪的是,它似乎在舊版本中工作:http://3v4l.org/0Pq36 – deceze 2013-02-18 20:15:25