What's the difference between if(!$variable) and if(isset($variable))?
What is the difference between if(!$variable) and if开发者_如何学JAVA(isset($variable))?
Well, the answer is pretty simple. isset($var) returns whether or not a variable exists and is not null, where !$var tells you if that variable is true, or anything that evaluates to true (such as a non-empty string). This is summarized in the first table of this documentation page.
Also, using !$var will output a notice that you're using an undefined variable, whereas isset($var) won't do that.
Mind you, they are two different things:
<?php
var_dump( isset($foo) ); // false.
var_dump( !$foo ); // true, but with a warning.
$foo = false;
var_dump( isset($foo) ); // true
var_dump( !$foo ); // true.
If a variable is not set, then you will get a warning when using if(!Variable).
They are two different statements
- in the first you check if a variable is false hence the '!'
- here you check if a variable is actually set to some value other then null.
加载中,请稍侯......
精彩评论