我有一個XHTML表單,我要求人們輸入他們的全名。然後我用preg_match()
使用這種模式匹配:/^[\p{L}\s]+$/
preg_match和(非英文)拉丁字符?
在我的本地服務器上運行PHP 5.2.13(PCRE 7.9 2009-04-11)這工作正常。 在運行PHP 5.2.10(PCRE 7.3 2007-08-28)的主機上,當輸入的字符串包含丹麥拉丁字符ø(http://www.ltg.ed.ac.uk/~richard/utf-8.cgi?input=%F8&mode=char)時,它不匹配。
這是一個錯誤?有沒有解決辦法?
預先感謝您!
你使用'/ u'修飾符嗎?否則,在PHP 4.3之前,UTF-8已經得到支持。 PCRE更改日誌表明7.x系列中存在多個錯誤。 – mario 2011-03-24 19:58:57
你可以檢查['preg_last_error']的輸出(http://us.php.net/manual/en/function.preg-last-error.php)嗎? – Charles 2011-03-24 20:00:09
@mario不,我不知道。我不知道我會如何使用它?如果我只是添加u修飾符,該模式甚至不匹配我的本地服務器。 – 2011-03-24 22:59:44