<?php
class Foo { public $bar; }
$foo = new Foo;
$arr = array("", " ", FALSE, TRUE, array(), NULL, "0", 0, 0.0, new stdClass, $foo, $foo->bar, "\0");
define('PAD', 20);
$headings = array('type', 'if', 'isset', 'empty', 'is_null');
// foreach($headings as $heading){ echo str_pad($heading, PAD), " | "; }
echo "\n";
$x = str_pad("TRUE", PAD) . " | ";
$y = str_pad("", PAD) . " | ";
foreach($arr as $val){
var_export($val);
/*
echo str_pad(print($val), PAD), " | ";
echo $val ? $x : $y;
echo isset($val) ? $x : $y;
echo empty($val) ? $x : $y;
echo is_null($val) ? $x : $y;
*/
echo "\n";
}
- Output for 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- ''
' '
false
true
array (
)
NULL
'0'
0
0.0
(object) array(
)
\Foo::__set_state(array(
'bar' => NULL,
))
NULL
'' . "\0" . ''
- Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28
- ''
' '
false
true
array (
)
NULL
'0'
0
0.0
(object) array(
)
Foo::__set_state(array(
'bar' => NULL,
))
NULL
'' . "\0" . ''
- Output for 7.0.2 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33
- ''
' '
false
true
array (
)
NULL
'0'
0
0.0
stdClass::__set_state(array(
))
Foo::__set_state(array(
'bar' => NULL,
))
NULL
'' . "\0" . ''
- Output for 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.28, 7.0.0 - 7.0.1
- ''
' '
false
true
array (
)
NULL
'0'
0
0
stdClass::__set_state(array(
))
Foo::__set_state(array(
'bar' => NULL,
))
NULL
'' . "\0" . ''
preferences:
235.35 ms | 402 KiB | 315 Q