本文目錄一覽:
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-hk/n/236077.html