3v4l.org

run code in 300+ PHP versions simultaneously
<?php $userSeparator = '0'; $selfSeparator = '+'; $separator = $userSeparator ?: $selfSeparator ?: '-'; echo "Separator = '$separator'";
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/S1qBK
function name:  (null)
number of ops:  12
compiled vars:  !0 = $userSeparator, !1 = $selfSeparator, !2 = $separator
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '0'
    4     1        ASSIGN                                                   !1, '%2B'
    6     2        JMP_SET                                          ~5      !0, ->4
          3        QM_ASSIGN                                        ~5      !1
          4        JMP_SET                                          ~6      ~5, ->6
          5        QM_ASSIGN                                        ~6      '-'
          6        ASSIGN                                                   !2, ~6
    7     7        ROPE_INIT                                     3  ~9      'Separator+%3D+%27'
          8        ROPE_ADD                                      1  ~9      ~9, !2
          9        ROPE_END                                      2  ~8      ~9, '%27'
         10        ECHO                                                     ~8
         11      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
163.36 ms | 1392 KiB | 13 Q