我如何添加isset()并在我的代码下面保留empty()?
$pagesize = (!empty($_GET['pagesize'])) ? $_GET['pagesize'] : 20;
更新:
我只是想确保php不会产生任何通知或警告
答案 0 :(得分:12)
这是你的意思吗?
$pagesize = (isset($_GET['pagesize']) && !empty($_GET['pagesize'])) ?
$_GET['pagesize'] :
20;
http://us.php.net/manual/en/language.operators.logical.php
修改强>
要完成,empty已经检查是否设置了某些内容,因此您也不需要使用isset()。
如果它直接进入查询或类似的东西,我也会警告不要使用此代码。请考虑使用intval,is_numeric和类似功能。
答案 1 :(得分:3)
我不确定你在这之后究竟是什么。 isset
将检查是否已设置值,如果已设置则返回true。 empty
将检查值是否已设置或是否等于false(例如:0, "", null
),如果匹配则返回true。
我不明白为什么你需要将两者结合起来。要在不使用 empty
的情况下重写示例,您可以执行以下操作:
$pagesize = isset($_GET['pagesize']) && $_GET['pagesize']
? $_GET['pagesize']
: 20;