File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2929 No warning is generated if the variable does not exist.
3030 That means <function >empty</function > is essentially the
3131 concise equivalent to <command >!isset($var) || $var == false</command >.
32+ This also applies to nested structures, such as a multidimensional array or chained properties.
3233 </para >
3334 </listitem >
3435 </varlistentry >
@@ -79,7 +80,6 @@ $expected_array_got_string = 'somestring';
7980var_dump(empty($expected_array_got_string['some_key']));
8081var_dump(empty($expected_array_got_string[0]));
8182var_dump(empty($expected_array_got_string['0']));
82- var_dump(empty($expected_array_got_string[0.5]));
8383var_dump(empty($expected_array_got_string['0.5']));
8484var_dump(empty($expected_array_got_string['0 Mostel']));
8585?>
@@ -91,9 +91,40 @@ var_dump(empty($expected_array_got_string['0 Mostel']));
9191bool(true)
9292bool(false)
9393bool(false)
94- bool(false)
9594bool(true)
9695bool(true)
96+ ]]>
97+ </screen >
98+ </example >
99+ <example >
100+ <title ><function >empty</function > on multidimensional arrays</title >
101+ <programlisting role =" php" >
102+ <![CDATA[
103+ <?php
104+ $multidimensional = [
105+ 'some' => [
106+ 'deep' => [
107+ 'nested' => 'value'
108+ ]
109+ ]
110+ ];
111+
112+ if (!empty($multidimensional['some']['some']['nested'])) {
113+ $someVariable = $multidimensional['some']['deep']['nested'];
114+ }
115+
116+ var_dump(empty($multidimensional['some-undefined-key']));
117+ var_dump(empty($multidimensional['some']['deep']['unknown']));
118+ var_dump(empty($multidimensional['some']['deep']['nested']));
119+ ?>
120+ ]]>
121+ </programlisting >
122+ &example.outputs;
123+ <screen >
124+ <![CDATA[
125+ bool(true)
126+ bool(true)
127+ bool(false)
97128]]>
98129 </screen >
99130 </example >
You can’t perform that action at this time.
0 commit comments