2014-07-09 86 views
-2

我剛剛創建了一個網站,我想創建一個「搜索」模塊,數據庫已創建,並且我已連接,系統似乎正常工作,但此消息覆蓋了我的網頁:PHP錯誤信息:preg_match

PHP錯誤消息:

Warning: preg_match() [function.preg-match]: Compilation failed: unknown property name Effective \ P or \ p at 

offset 7 in/home/a3637125/public_html/Moteur-de-recherche/class.inc/moteur-php5.class-inc.php on line 706 

相關的代碼:

if(preg_match('#[\p{Xan}][^a-zA-Z]#iu', $mot)) { 
    $mot = str_ireplace($withaccent, $withnoaccent, htmlspecialchars(trim($mot))); 
} 
+0

那麼你的正則表達式是壞的,但我不知道你想用它來實現 – Steve

回答

2

你PCRE版本太舊,不知道的Unicode字符類\p{Xan}。這不是一個真正的問題,因爲你可以寫:

#[\pL\pN][^a-z]#i 

這完全一樣。

Nota Bene:如果你解釋你的模式應該做什麼,這將是有趣的。如果你試圖用ascii代替所有重點字符,我建議看看this question

+0

謝謝你的回覆,我很快就解決了這個問題,的確,這是正確的,只需要替換這樣的表達式:'if(preg_match('#[a-zàáâãäçêéêëìíîïñòóôõùùúûü] [^ a-zA-Z] #iu',$ mot))' – hexphp111