本文目錄一覽:
php怎樣過濾掉特殊字元啊 ☺
過濾掉特殊字元,可以考慮使用字元串替換的方法,在php中替換字元效率最高也是最簡單字元替換函數str_replace函數。
使用方法:str_replace(find,replace,string,count)
參數說明:
find 必需。規定要查找的值。
replace 必需。規定替換 find 中的值的值。
string 必需。規定被搜索的字元串。
count 可選。一個變數,對替換數進行計數。
實例:
str_replace(“iwind”, “kiki”, “i love iwind, iwind said”);
將輸出 “i love kiki, kiki said”
當然你也可以採取正則替換的方法,該函數是preg_replace
PHP 如何過濾特殊字元 如 ◆ )- : 、 、!! / 等?
PHP 中的 preg_replace() 函數可以實現
實例:只匹配中文
?php
$str = “php)!!編程”;
echo preg_replace(“/[^\x{4e00}-\x{9fa5}]/iu”,”,$str);
?
php字元串過濾
$str = preg_replace(“/^.+=(.+)$/”, “新內容\\1”, $str); //過濾等於號前面的所有字元串(包括等於號)
$str = preg_replace(“/^(.+)=.+$/”, “\\1″.”新內容”, $str); //過濾等於號後面的所有字元串(包括等於號)
PHP過濾一段字元
額,str_replace是字元串替換。。正則替換用preg_replace,
$new_time = preg_replace(“\!–結束代碼–\(.*?)\!–開始代碼–\”,””,$new_time);
php中數據過濾的問題
我來解釋一下吧
preg_replace(‘/[\\x00-\\x08\\x0B\\x0C\\x0E-\\x1F]/’,”,$string);
去掉控制字元,你google一下ascii table就知道了,php裡面 – 代表範圍,比如\x00-\x08指的是ASCII代碼在\x00到\x08範圍的字元,\x0A和\x0D代表回車換行,所以沒包含在這個裡面,否則直接\x00-\x1F了,
$string = str_replace(array(“\0″,”%00″,”\r”),”,$string);
\0表示ASCII 0x00的字元,通常作為字元串結束標誌
$string = preg_replace(“/(?!(#[0-9]+|[a-z]+);)/si”,”,$string);
我們知道HTML裡面可以用xx;來對一些字元進行編碼,比如 (空格), ߷ Unicode字元等,A(?!B) 表示的是A後面不是B,所以作者想保留 ߷類似的 HTML編碼字元,去掉其他的問題字元,比如 123; nbsp;
str_replace(array(“%3C”,”),”,$string);
第一個”多餘吧,%3C是編碼以後的 , 一般用在URL編碼里
str_replace(array(“%3E”,”),”,$string);
str_replace(array(‘”‘,”‘”,”\t”,’ ‘),array(‘”‘,”‘”,”,”),$string);
略過
有問題再追問
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/236077.html