與HTML實體相關的函數
htmlspecialchars函數
描述:預定義的字符轉換為HTML實體
語法:string htmlspecialchars(string $string [,int $flags = ENT_COMPAT)
說明:$flags參數規定如何處理引號,其值可以為:
ENT_COMPAT 默認,僅編碼雙引號
ENT_QUOTES 編碼雙引號和單引號
ENT_NOQUOTES 不編碼任何引號
$str = "A>B,B<C,Tom&John,He said: \"OK\""; echo htmlspecialchars($str);
//通過str_replace進行轉換
$str1 = str_replace('&','&',$str);//必須是第一
$str2 = str_replace('>','>',$str1);
$str2 = str_replace('<','<',$str2);
$str2 = str_replace('"','"',$str2);
$str2 = str_replace("'",''',$str2);
echo '<br>';
echo $str2;
那么htmlspecialchars($str)這個函數就是等價於下面的一組函數
至於為什么一定要先替換&,因為后面的實體都帶有&,所以要先換它,避免后面把實體的&符號給換掉了。
