3v4l.org

run code in 300+ PHP versions simultaneously
<?php echo 'count(false): ',count(false),"\n"; echo 'count(0): ',count(0),"\n"; echo 'count(array(false)): ',count(array(false)),"\n"; echo 'count(array(0)): ',count(array(0)),"\n"; echo 'count(null): ',count(null),"\n"; echo 'count(array()): ',count(array()),"\n"; class Test {} $t = new Test(); echo 'count($t): ', count($t), "\n"; // not empty; see below: $emptyit = new EmptyIterator; echo 'count($emptyit): ', count($emptyit), "\n"; // obj w/no properties not empty PHP5+ echo 'empty(null):', empty(null), "\n"; echo 'empty(array():',empty(array()),"\n"; // obj w/no properties not empty PHP5+ echo 'empty($t):',empty($t),"\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/XpHK2
function name:  (null)
number of ops:  49
compiled vars:  !0 = $t, !1 = $emptyit
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ECHO                                                     'count%28false%29%3A+'
          1        COUNT                                            ~2      <false>
          2        ECHO                                                     ~2
          3        ECHO                                                     '%0A'
    3     4        ECHO                                                     'count%280%29%3A+'
          5        COUNT                                            ~3      0
          6        ECHO                                                     ~3
          7        ECHO                                                     '%0A'
    5     8        ECHO                                                     'count%28array%28false%29%29%3A+'
          9        COUNT                                            ~4      <array>
         10        ECHO                                                     ~4
         11        ECHO                                                     '%0A'
    6    12        ECHO                                                     'count%28array%280%29%29%3A+'
         13        COUNT                                            ~5      <array>
         14        ECHO                                                     ~5
         15        ECHO                                                     '%0A'
    8    16        ECHO                                                     'count%28null%29%3A+'
         17        COUNT                                            ~6      null
         18        ECHO                                                     ~6
         19        ECHO                                                     '%0A'
    9    20        ECHO                                                     'count%28array%28%29%29%3A+'
         21        COUNT                                            ~7      <array>
         22        ECHO                                                     ~7
         23        ECHO                                                     '%0A'
   12    24        NEW                                              $8      'Test'
         25        DO_FCALL                                      0          
         26        ASSIGN                                                   !0, $8
   13    27        ECHO                                                     'count%28%24t%29%3A+'
         28        COUNT                                            ~11     !0
         29        ECHO                                                     ~11
         30        ECHO                                                     '%0A'
   15    31        NEW                                              $12     'EmptyIterator'
         32        DO_FCALL                                      0          
         33        ASSIGN                                                   !1, $12
   16    34        ECHO                                                     'count%28%24emptyit%29%3A+'
         35        COUNT                                            ~15     !1
         36        ECHO                                                     ~15
         37        ECHO                                                     '%0A'
   18    38        ECHO                                                     'empty%28null%29%3A'
         39        ECHO                                                     <true>
         40        ECHO                                                     '%0A'
   19    41        ECHO                                                     'empty%28array%28%29%3A'
         42        ECHO                                                     <true>
         43        ECHO                                                     '%0A'
   20    44        ECHO                                                     'empty%28%24t%29%3A'
         45        ISSET_ISEMPTY_CV                                 ~16     !0
         46        ECHO                                                     ~16
         47        ECHO                                                     '%0A'
         48      > RETURN                                                   1

Class Test: [no user functions]

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
145.57 ms | 1390 KiB | 13 Q