国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

php 數(shù)據(jù)過濾

Tony_Zby / 3112人閱讀

摘要:在對用戶輸入數(shù)據(jù)進行過濾時通常都是自己寫方法進行判斷比如驗證郵箱的時候使用正則表達式郵件格式有誤如果不用正則還有其它跟簡單的方法嗎使用相關(guān)函數(shù)是否存在指定類型的變量。獲取多項變量,并進行過濾。

在對用戶輸入數(shù)據(jù)進行過濾時通常都是自己寫方法進行判斷
比如驗證郵箱的時候使用正則表達式
$pattern = "/w+([-+."]w+)*@w+([-.]w+)*.w+([-.]w+)*/";
if (!preg_match($pattern, $email)) {
        throw new Exception(self::ERROR_PARAMETER_EMPTY . "_郵件格式有誤:" . $email);
}

如果不用正則還有其它跟簡單的方法嗎?

使用filter相關(guān)函數(shù)
filter_has_var(type, variable) 是否存在指定類型的變量。
filter_input 從腳本外部獲取輸入,并進行過濾。
filter_input_array 從腳本外部獲取多項輸入,并進行過濾。
filter_var 獲取一個變量,并進行過濾。
filter_var_array 獲取多項變量,并進行過濾。
filter_has_var

判斷$_GET 的結(jié)果是否包含name

if(!filter_has_var(INPUT_GET, "name"))
{
    echo("name 不存在");
}
else
{
    echo("name 存在");
}
filter_input

看一個驗證郵箱的例子

if (!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL))
{
    echo "E-Mail is not valid";
}
else
{
    echo "E-Mail is valid";
}
filter_input_array

對整個input源進行過濾

$filters = array
(
    "name" => array
    (
        "filter"=>FILTER_CALLBACK,
        "flags"=>FILTER_FORCE_ARRAY,
        "options"=>"ucwords"
    ),
    "age" => array
    (
        "filter"=>FILTER_VALIDATE_INT,
        "options"=>array
        (
            "min_range"=>1,
            "max_range"=>120
        )
    ),
    "email"=> FILTER_VALIDATE_EMAIL,
);
print_r(filter_input_array(INPUT_POST, $filters));
filter_var,filter_var_array

不需要input源,直接對值進行過濾

if(!filter_var("someone@example....com", FILTER_VALIDATE_EMAIL))
 {
 echo("E-mail is not valid");
 }
else
 {
 echo("E-mail is valid");
 }
input源的范圍

驗證

其它過濾方法
strip_tags 刪除html標簽
htmlentities 把字符轉(zhuǎn)換為 HTML 實體,(還會把貨幣表示符號歐元英鎊等、版權(quán)符號等轉(zhuǎn)義)
htmlspecialchars 函數(shù)把預定義的字符轉(zhuǎn)換為 HTML 實體。
預定義的字符是:
& (和號)成為 &
" (雙引號)成為 "
" (單引號)成為 "
< (小于)成為 <
(大于)成為 >

*提示:如需把特殊的 HTML 實體轉(zhuǎn)換回字符,請使用 htmlspecialcharsdecode() 函數(shù)。


$input = "我是標題";
echo htmlspecialchars($input) . "
";
echo htmlentities($input) . "
";
echo strip_tags($input) . "
";

$input = "-- "select * from ";
echo addslashes($input) . "
";

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/29692.html

相關(guān)文章

  • PHP最佳實踐之過濾、驗證、轉(zhuǎn)義和密碼

    摘要:過濾驗證和轉(zhuǎn)義不要相信任何來自不受自己直接控制的數(shù)據(jù)源中的數(shù)據(jù)。加密和哈希不是一回事,加密是雙向算法,加密的數(shù)據(jù)可以被解密。使用密碼哈希簡化計算密碼哈希和驗證密碼的操作。密碼的哈希值存儲在類型的數(shù)據(jù)庫列中。 過濾、驗證和轉(zhuǎn)義 1).不要相信任何來自不受自己直接控制的數(shù)據(jù)源中的數(shù)據(jù)。包括但不限于: $_GET $_POST $_REQUEST $_COOKIE $argv php://...

    HitenDev 評論0 收藏0
  • PHP偽協(xié)議總結(jié)

    摘要:參考了這篇文章偽協(xié)議實現(xiàn)命令執(zhí)行的七種姿勢,并根據(jù)自己理解進行了總結(jié),也算是加深一下印象,方便以后使用。說明文件系統(tǒng)是使用的默認封裝協(xié)議,展現(xiàn)了本地文件系統(tǒng)。允許直接訪問指定的文件描述符。 參考了這篇文章:php偽協(xié)議實現(xiàn)命令執(zhí)行的七種姿勢,并根據(jù)自己理解進行了總結(jié),也算是加深一下印象,方便以后使用。 file:// 協(xié)議 條件: allow_url_fopen:off/on...

    huaixiaoz 評論0 收藏0
  • php常用的安全過濾函數(shù)

    摘要:由于越來越多的項目開始使用框架,所以,很多的程序員也不在關(guān)心安全的問題因為框架已經(jīng)幫我們幾乎完美的處理了但是,個人認為,我們還是需要了解一下常用的安全處理函數(shù)原因簡單很多小的功能和項目是用不到框架的,我們需要自己解決安全問題常用的安全函數(shù)有 由于越來越多的項目開始使用框架,所以,很多的程序員也不在關(guān)心安全的問題!因為框架已經(jīng)幫我們幾乎完美的處理了!但是,個人認為,我們還是需要了解一下常...

    niceforbear 評論0 收藏0
  • PHP數(shù)據(jù)過濾

    摘要:提交數(shù)據(jù)過濾的基本原則提交變量進數(shù)據(jù)庫時,我們必須使用進行過濾,像我們的注入問題,一個也就搞定了。其實在涉及到變量取值時,函數(shù)對字符串的過濾也是個不錯的選擇。對于進出數(shù)據(jù)庫的數(shù)據(jù)可以起到格式話的作用。簡單的數(shù)據(jù)過濾入庫出庫顯示 1、php提交數(shù)據(jù)過濾的基本原則 1)提交變量進數(shù)據(jù)庫時,我們必須使用addslashes()進行過濾,像我們的注入問題,一個addslashes()也就搞定...

    e10101 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<