3v4l.org

run code in 300+ PHP versions simultaneously
<?php $fileString = "0\r\nCIRCLE\r\n8\r\nV_DrillSF_16\r\n39\r\n16\r\n10\r\n765.1\r\n20\r\n57.0\r\n30\r\n0\r\n40\r\n4.0\r\n0\r\nCIRCLE\r\n8\r\nV_DrillSFS\r\n39\r\n16\r\n10\r\n765.1\r\n20\r\n57.0\r\n30\r\n0\r\n40\r\n3.5\r\n0\r\nCIRCLE\r\n8\r\nV_DrillSF_16\r\n39\r\n16\r\n10\r\n765.1\r\n20\r\n89.0\r\n30\r\n0\r\n40\r\n4.0\r\n0\r\nCIRCLE\r\n8\r\nV_DrillSF_16\r\n39\r\n16\r\n10\r\n765.1\r\n20\r\n249.0\r\n30\r\n0\r\n40\r\n4.0"; $res = preg_split('~(*ANYCRLF)\R(?=0\RCIRCLE$)~m', $fileString); print_r(array_map(function($x) { return explode("\r\n", $x); }, $res));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3GWid
function name:  (null)
number of ops:  15
compiled vars:  !0 = $fileString, !1 = $res
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '0%0D%0ACIRCLE%0D%0A8%0D%0AV_DrillSF_16%0D%0A39%0D%0A16%0D%0A10%0D%0A765.1%0D%0A20%0D%0A57.0%0D%0A30%0D%0A0%0D%0A40%0D%0A4.0%0D%0A0%0D%0ACIRCLE%0D%0A8%0D%0AV_DrillSFS%0D%0A39%0D%0A16%0D%0A10%0D%0A765.1%0D%0A20%0D%0A57.0%0D%0A30%0D%0A0%0D%0A40%0D%0A3.5%0D%0A0%0D%0ACIRCLE%0D%0A8%0D%0AV_DrillSF_16%0D%0A39%0D%0A16%0D%0A10%0D%0A765.1%0D%0A20%0D%0A89.0%0D%0A30%0D%0A0%0D%0A40%0D%0A4.0%0D%0A0%0D%0ACIRCLE%0D%0A8%0D%0AV_DrillSF_16%0D%0A39%0D%0A16%0D%0A10%0D%0A765.1%0D%0A20%0D%0A249.0%0D%0A30%0D%0A0%0D%0A40%0D%0A4.0'
    4     1        INIT_FCALL                                               'preg_split'
          2        SEND_VAL                                                 '%7E%28%2AANYCRLF%29%5CR%28%3F%3D0%5CRCIRCLE%24%29%7Em'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $3      
          5        ASSIGN                                                   !1, $3
    5     6        INIT_FCALL                                               'print_r'
          7        INIT_FCALL                                               'array_map'
          8        DECLARE_LAMBDA_FUNCTION                          ~5      [0]
          9        SEND_VAL                                                 ~5
         10        SEND_VAR                                                 !1
         11        DO_ICALL                                         $6      
         12        SEND_VAR                                                 $6
         13        DO_ICALL                                                 
         14      > RETURN                                                   1


Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/3GWid
function name:  {closure}
number of ops:  7
compiled vars:  !0 = $x
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
          0  E >   RECV                                             !0      
          1        INIT_FCALL                                               'explode'
          2        SEND_VAL                                                 '%0D%0A'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $1      
          5      > RETURN                                                   $1
          6*     > RETURN                                                   null

End of Dynamic Function 0

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.34 ms | 1014 KiB | 17 Q