- 關於
filter
函式過濾 會把非字串型別(如 布林型,整型)轉為字串型別的bug
/**
* 修復後的輸入過濾
* 富文字反XSS請使用 clean_xss,也就不需要及不能再 filter 了
* @param string|bool|int $string 要過濾的字串
* @return string|bool|int
*/
function filter(string|bool|int $string): string|bool|int
{
if (!is_string($string)) return $string;
// 去除字串兩端空格(對防程式碼注入有一定作用)
$string = trim($string);
// 過濾html和php標籤
$string = strip_tags($string);
// 特殊字元轉實體
return htmlspecialchars($string, ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401, 'UTF-8');
}