3v4l.org

run code in 500+ PHP versions simultaneously
<?php $str = '1_10_10-Einzel.pdf'; var_export( preg_split('/[-_.]/', $str) ); echo "\n---\n"; var_export( preg_split('/-|_|\./', $str) ); echo "\n---\n"; var_export( preg_split('%[-_.]+%', $str) ); echo "\n---\n"; var_export( preg_split("/[-_.]+/", $str, 0, PREG_SPLIT_NO_EMPTY) ); echo "\n---\n"; var_export( preg_split('@[-_.]+@', $str, flags: PREG_SPLIT_NO_EMPTY) ); echo "\n---\n"; $args = [ 'pattern' => '#[-_.]+#', 'subject' => $str, 'flags' => PREG_SPLIT_NO_EMPTY, ]; var_export( preg_split(...$args) );
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/UoVhf
function name:  (null)
number of ops:  57
compiled vars:  !0 = $str, !1 = $args
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, '1_10_10-Einzel.pdf'
    5     1        INIT_FCALL                                                   'var_export'
    6     2        INIT_FCALL                                                   'preg_split'
          3        SEND_VAL                                                     '%2F%5B-_.%5D%2F'
          4        SEND_VAR                                                     !0
          5        DO_ICALL                                             $3      
          6        SEND_VAR                                                     $3
    5     7        DO_ICALL                                                     
    8     8        ECHO                                                         '%0A---%0A'
   10     9        INIT_FCALL                                                   'var_export'
   11    10        INIT_FCALL                                                   'preg_split'
         11        SEND_VAL                                                     '%2F-%7C_%7C%5C.%2F'
         12        SEND_VAR                                                     !0
         13        DO_ICALL                                             $5      
         14        SEND_VAR                                                     $5
   10    15        DO_ICALL                                                     
   13    16        ECHO                                                         '%0A---%0A'
   15    17        INIT_FCALL                                                   'var_export'
   16    18        INIT_FCALL                                                   'preg_split'
         19        SEND_VAL                                                     '%25%5B-_.%5D%2B%25'
         20        SEND_VAR                                                     !0
         21        DO_ICALL                                             $7      
         22        SEND_VAR                                                     $7
   15    23        DO_ICALL                                                     
   18    24        ECHO                                                         '%0A---%0A'
   20    25        INIT_FCALL                                                   'var_export'
   21    26        INIT_FCALL                                                   'preg_split'
         27        SEND_VAL                                                     '%2F%5B-_.%5D%2B%2F'
         28        SEND_VAR                                                     !0
         29        SEND_VAL                                                     0
         30        SEND_VAL                                                     1
         31        DO_ICALL                                             $9      
         32        SEND_VAR                                                     $9
   20    33        DO_ICALL                                                     
   23    34        ECHO                                                         '%0A---%0A'
   25    35        INIT_FCALL                                                   'var_export'
   26    36        INIT_FCALL                                                   'preg_split'
         37        SEND_VAL                                                     '%40%5B-_.%5D%2B%40'
         38        SEND_VAR                                                     !0
         39        SEND_VAL                                                     1
         40        CHECK_UNDEF_ARGS                                             
         41        DO_ICALL                                             $11     
         42        SEND_VAR                                                     $11
   25    43        DO_ICALL                                                     
   28    44        ECHO                                                         '%0A---%0A'
   31    45        INIT_ARRAY                                           ~13     '%23%5B-_.%5D%2B%23', 'pattern'
   32    46        ADD_ARRAY_ELEMENT                                    ~13     !0, 'subject'
   31    47        ADD_ARRAY_ELEMENT                                    ~13     1, 'flags'
   30    48        ASSIGN                                                       !1, ~13
   35    49        INIT_FCALL                                                   'var_export'
   36    50        INIT_FCALL                                                   'preg_split'
         51        SEND_UNPACK                                                  !1
         52        CHECK_UNDEF_ARGS                                             
         53        DO_ICALL                                             $15     
         54        SEND_VAR                                                     $15
   35    55        DO_ICALL                                                     
   37    56      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
158.46 ms | 1372 KiB | 15 Q