isset和empty
$pageLimit=$_POST["pageLimit"];
}else{
$pageLimit=0;
}
前面得isset 是不是多余了,
有人说
当没有pagelimit字段时 直接用empty判断 会抛异常 ,
为什么我看不到异常,还是需要php.ini得特别设置?
回复讨论(解决方案)
你把error_reporting设置为E_ALL再看看呢
你是说
if(!empty($_POST["pageLimit"])){
没有异常吗?
ini_set('error_reporting', E_ALL);
就有了
empty 和isset 最大的区别就是empty 判断为0 是也会返回true if(isset($_POST["pageLimit"]) && !empty($_POST["pageLimit"])){
$pageLimit=$_POST["pageLimit"];
}else{
$pageLimit=0;
}
前面得isset 是不是多余了,
有人说
当没有pagelimit字段时 直接用empty判……
你是说
if(!empty($_POST["pageLimit"])){
没有异常吗?
ini_set('error_reporting', E_ALL);
就有了
ini_set('error_reporting', E_ALL);
if(empty($_POST["zz"])){
echo 1;
}
?>
貌似没抛出异常。
ini_set('error_reporting', E_ALL);
不起作用?那就
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
不起作用?那就
error_reporting(E_ALL);
都没动静,
你可以自己test
噢,被调整了。低版本是不行的
if(isset($_POST["pageLimit"]) && !empty($_POST["pageLimit"])){
$pageLimit=$_POST["pageLimit"];
}else{
$pageLimit=0;
}
按照你的代码,前面那个确实可以不用写。
就像楼上说的empty(0)也返回真,但是你的$pageLimit=0;,因此isset完全可以去掉
兄台,你学到一定程序,就晓得二者的不同、和妙用了。