5-1
資料過濾檢查
- 寫入時文字務必針對特殊符號進行處理(盡量能存)
- 存入時,若有特殊符號,如:「\」、「"」、「'」,若沒有處理,那麼可能無法存入。我們利用內建的 MyTextSanitizer 文字過濾工具來處理
$myts = MyTextSanitizer::getInstance();
- 替特殊符號加入脫逸斜線,以順利存入資料庫中,非常常用。
$myts->addSlashes(文字);
- 用來過濾不雅字元,需搭配XOOPS後台的「偏好設定→系統設定→敏感字詞檢查」設定來使用。
$myts->censorString(文字);
- 我們將之做成clean_var()函數,並放在function.php中,以便前後台都可以呼叫使用
//檢查並傳回欲拿到資料使用的變數
function clean_var($var = '', $title = '', $filter = '')
{
$myts = MyTextSanitizer::getInstance();
$var = $myts->addSlashes($_REQUEST[$var]);
if (empty($var)) {
throw new Exception("{$title}為必填!");
}
if ($filter) {
$var = filter_var($var, $filter);
if (!$var) {
throw new Exception("不合法的{$title}");
}
}
return $var;
}