3v4l.org

run code in 300+ PHP versions simultaneously
<?php $a = array('<foo>',"'bar'",'"baz"','&blong&', "\xc3\xa9"); echo "Normal: ", json_encode($a), "\n"; echo "Tags: ", json_encode($a, JSON_HEX_TAG), "\n"; echo "Apos: ", json_encode($a, JSON_HEX_APOS), "\n"; echo "Quot: ", json_encode($a, JSON_HEX_QUOT), "\n"; echo "Amp: ", json_encode($a, JSON_HEX_AMP), "\n"; echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "\n"; echo "All: ", json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "\n\n"; $b = array(); echo "Empty array output as array: ", json_encode($b), "\n"; echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "\n\n"; $c = array(array(1,2,3)); echo "Non-associative array output as array: ", json_encode($c), "\n"; echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "\n\n"; $d = array('foo' => 'bar', 'baz' => 'long'); echo "Associative array always output as object: ", json_encode($d), "\n"; echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/2gltn
function name:  (null)
number of ops:  92
compiled vars:  !0 = $a, !1 = $b, !2 = $c, !3 = $d
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, <array>
    5     1        ECHO                                                     'Normal%3A+'
          2        INIT_FCALL                                               'json_encode'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $5      
          5        ECHO                                                     $5
          6        ECHO                                                     '%0A'
    6     7        ECHO                                                     'Tags%3A+'
          8        INIT_FCALL                                               'json_encode'
          9        SEND_VAR                                                 !0
         10        SEND_VAL                                                 1
         11        DO_ICALL                                         $6      
         12        ECHO                                                     $6
         13        ECHO                                                     '%0A'
    7    14        ECHO                                                     'Apos%3A+'
         15        INIT_FCALL                                               'json_encode'
         16        SEND_VAR                                                 !0
         17        SEND_VAL                                                 4
         18        DO_ICALL                                         $7      
         19        ECHO                                                     $7
         20        ECHO                                                     '%0A'
    8    21        ECHO                                                     'Quot%3A+'
         22        INIT_FCALL                                               'json_encode'
         23        SEND_VAR                                                 !0
         24        SEND_VAL                                                 8
         25        DO_ICALL                                         $8      
         26        ECHO                                                     $8
         27        ECHO                                                     '%0A'
    9    28        ECHO                                                     'Amp%3A+'
         29        INIT_FCALL                                               'json_encode'
         30        SEND_VAR                                                 !0
         31        SEND_VAL                                                 2
         32        DO_ICALL                                         $9      
         33        ECHO                                                     $9
         34        ECHO                                                     '%0A'
   10    35        ECHO                                                     'Unicode%3A+'
         36        INIT_FCALL                                               'json_encode'
         37        SEND_VAR                                                 !0
         38        SEND_VAL                                                 256
         39        DO_ICALL                                         $10     
         40        ECHO                                                     $10
         41        ECHO                                                     '%0A'
   11    42        ECHO                                                     'All%3A+'
         43        INIT_FCALL                                               'json_encode'
         44        SEND_VAR                                                 !0
         45        SEND_VAL                                                 271
         46        DO_ICALL                                         $11     
         47        ECHO                                                     $11
         48        ECHO                                                     '%0A%0A'
   13    49        ASSIGN                                                   !1, <array>
   15    50        ECHO                                                     'Empty+array+output+as+array%3A+'
         51        INIT_FCALL                                               'json_encode'
         52        SEND_VAR                                                 !1
         53        DO_ICALL                                         $13     
         54        ECHO                                                     $13
         55        ECHO                                                     '%0A'
   16    56        ECHO                                                     'Empty+array+output+as+object%3A+'
         57        INIT_FCALL                                               'json_encode'
         58        SEND_VAR                                                 !1
         59        SEND_VAL                                                 16
         60        DO_ICALL                                         $14     
         61        ECHO                                                     $14
         62        ECHO                                                     '%0A%0A'
   18    63        ASSIGN                                                   !2, <array>
   20    64        ECHO                                                     'Non-associative+array+output+as+array%3A+'
         65        INIT_FCALL                                               'json_encode'
         66        SEND_VAR                                                 !2
         67        DO_ICALL                                         $16     
         68        ECHO                                                     $16
         69        ECHO                                                     '%0A'
   21    70        ECHO                                                     'Non-associative+array+output+as+object%3A+'
         71        INIT_FCALL                                               'json_encode'
         72        SEND_VAR                                                 !2
         73        SEND_VAL                                                 16
         74        DO_ICALL                                         $17     
         75        ECHO                                                     $17
         76        ECHO                                                     '%0A%0A'
   23    77        ASSIGN                                                   !3, <array>
   25    78        ECHO                                                     'Associative+array+always+output+as+object%3A+'
         79        INIT_FCALL                                               'json_encode'
         80        SEND_VAR                                                 !3
         81        DO_ICALL                                         $19     
         82        ECHO                                                     $19
         83        ECHO                                                     '%0A'
   26    84        ECHO                                                     'Associative+array+always+output+as+object%3A+'
         85        INIT_FCALL                                               'json_encode'
         86        SEND_VAR                                                 !3
         87        SEND_VAL                                                 16
         88        DO_ICALL                                         $20     
         89        ECHO                                                     $20
         90        ECHO                                                     '%0A%0A'
         91      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
136.79 ms | 1405 KiB | 15 Q