運行我敢肯定,我知道問題是什麼,但我能不能解決這對我的生活,我只是不知道在做這點。PHP的正則表達式我的本地服務器上的工作 - 不工作的遠程主機上PHP4
我想要做的就是限定名字和姓氏字段的輸入。此代碼是工作在我的本地服務器上運行PHP5:
<?php
$regex = "John's Jerod";
if (!preg_match("/^[A-Za-z\'\,\.\s]+$/", $regex)) {
echo "ERROR!";
} else {
echo "NO ERROR!";
}
?>
正如預期的那樣,這將返回沒有錯誤!但是當我我活的服務器上運行此,我只能用相同的數據出現錯誤。
我確定這是逗號扔它!我很確定,因爲我運行的php版本在John的名字中做了一個像'\'的自動轉義,所以我在所有輸出上運行striptags,並且仍然是同樣的錯誤。
任何人都知道我在做什麼錯或我該如何解決這個問題?
到目前爲止,我在「bug」中已經有大約8個小時了。經歷了40多個RegEex的變體,沒有運氣。
我檢查和三重檢查我所有的表單字段名稱,乏等,以確保一切matcheds和一切正常。
SOS
服務器的操作系統和PHP版本相同或相似?如果你是從Windows到Linux/Mac的話,這可能是行結束。 – Blender 2011-01-07 20:16:08