3 回答

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
只需為此編寫一個(gè)函數(shù)。就像是:
function get_string($array, $index, $default = null) {
if (isset($array[$index]) && strlen($value = trim($array[$index])) > 0) {
return get_magic_quotes_gpc() ? stripslashes($value) : $value;
} else {
return $default;
}
}
你可以用作
$username = get_string($_POST, 'username');
做同樣的瑣碎的東西一樣get_number(),get_boolean(),get_array()等等。

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊
我相信解決這個(gè)問(wèn)題的最佳方法之一是通過(guò)類訪問(wèn)GET和POST(COOKIE,SESSION等)數(shù)組的值。
為每個(gè)數(shù)組創(chuàng)建一個(gè)類,聲明__get和__set方法(重載)。__get接受一個(gè)參數(shù),它將是一個(gè)值的名稱。此方法應(yīng)使用isset()或檢查相應(yīng)全局?jǐn)?shù)組中的此值,empty()如果存在,則返回該值,否則返回null(或某些其他默認(rèn)值)。
之后,您可以以這種方式自信地訪問(wèn)數(shù)組值:$POST->username如果需要,可以在不使用任何isset()s或empty()s的情況下進(jìn)行任何驗(yàn)證。如果username在相應(yīng)的全局?jǐn)?shù)組中不存在null則將返回,因此不會(huì)生成警告或通知。
- 3 回答
- 0 關(guān)注
- 424 瀏覽
添加回答
舉報(bào)