我再次創建聯繫表單,並且正在使用eregi()。但是,衆所周知,eregi()函數在PHP 5.3上已被棄用,所以我想知道可以使用什麼替代函數來替換函數eregi()?我試過了!preg_match,即使我得到了所需的輸出,仍然有錯誤! > 3 <EREGI在PHP中的替代函數
警告:的preg_match():定界符不能在Ç字母數字或反斜槓:\ XAMPP \ htdocs中\牆\上線38 (可能的垃圾郵件嘗試mailform.php檢測如果不是這種情況,請編輯聯繫表格的內容並重試。) - ()中的句子是所需的結果。
這是我使用的代碼。 !preg_match()曾經是eregi()。 :)
function spamcheck($field) {
if(!preg_match("to:",$field) || !preg_match("cc:",$field) || !preg_match("\r",$field) || !preg_match("\n",$field) || !preg_match("%0A",$field)){
$possiblespam = TRUE;
}else $possiblespam = FALSE;
if ($possiblespam) {
die("Possible spam attempt detected. If this is not the case, please edit the content of the contact form and try again.");
return 1;
}
}
謝謝任何人要回答和幫助我。任何形式的幫助都非常感謝!
從你的「正則表達式」 S,你只是想'stripos'? – Passerby
TBH,我不知道正則表達式是什麼,我懶得學習,因爲我很匆忙。什麼是'stripos',順便說一句?我已經通過網絡搜索,大部分答案都是我應該使用的!preg_match。但是當我使用它時會出現錯誤。 –
看來你只想知道,例如, 「to:」存在於$ field中。如果這是真的,那麼它根本不需要RegExp。嘗試'if(stripos($ field,「to:」)!== false || stripos($ field,「cc:」)!== false)'。 – Passerby