筆記國度

在這裡放著一些我自己的筆記

PHP 型態比較與 empty, isset 判斷

| Comments

這個是一個小程式,用來幫助釐清 PHP 內的型態比較,以及 empty, isset 的行為。

<pre>
0==0: <?=intval(0==0)?>

0==false: <?=intval(0==false)?>

0=="": <?=intval(0=="")?>

0==null: <?=intval(0==null)?>

0==array(): <?=intval(0==array())?>



0===0: <?=intval(0===0)?>

0===false: <?=intval(0===false)?>

0==="": <?=intval(0==="")?>

0===null: <?=intval(0===null)?>

0===array(): <?=intval(0===array())?>



empty(0): <?php $a=0;?><?=intval(empty($a))?>

empty(false): <?php $a=false;?><?=intval(empty($a))?>

empty(""): <?php $a="";?><?=intval(empty($a))?>

empty(null): <?php $a=null;?><?=intval(empty($a))?>

empty(array()): <?php $a=array();?><?=intval(empty($a))?>



isset(0): <?php $a=0;?><?=intval(isset($a))?>

isset(false): <?php $a=false;?><?=intval(isset($a))?>

isset(""): <?php $a="";?><?=intval(isset($a))?>

isset(null): <?php $a=null;?><?=intval(isset($a))?>

isset(array()): <?php $a=array();?><?=intval(isset($a))?>

</pre>

執行結果

0==0: 1
0==false: 1
0=="": 1
0==null: 1
0==array(): 0


0===0: 1
0===false: 0
0==="": 0
0===null: 0
0===array(): 0


empty(0): 1
empty(false): 1
empty(""): 1
empty(null): 1
empty(array()): 1


isset(0): 1
isset(false): 1
isset(""): 1
isset(null): 0
isset(array()): 1

Comments

comments powered by Disqus