3v4l.org

run code in 500+ PHP versions simultaneously
<?php $string = '12-34-56-78'; $pattern = '/^\d{2}(?|(---)|(-)|(\.)|(\:))\d{2}\1\d{2}\1\d{2}$/'; $result = preg_match($pattern, $string); var_dump($result); var_dump(PCRE_VERSION);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ndQQ8
function name:  (null)
number of ops:  11
compiled vars:  !0 = $string, !1 = $pattern, !2 = $result
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, '12-34-56-78'
    4     1        ASSIGN                                                       !1, '%2F%5E%5Cd%7B2%7D%28%3F%7C%28---%29%7C%28-%29%7C%28%5C.%29%7C%28%5C%3A%29%29%5Cd%7B2%7D%5C1%5Cd%7B2%7D%5C1%5Cd%7B2%7D%24%2F'
    5     2        FRAMELESS_ICALL_2                preg_match          ~5      !1, !0
          3        ASSIGN                                                       !2, ~5
    6     4        INIT_FCALL                                                   'var_dump'
          5        SEND_VAR                                                     !2
          6        DO_ICALL                                                     
    7     7        INIT_FCALL                                                   'var_dump'
          8        SEND_VAL                                                     '10.44+2024-06-07'
          9        DO_ICALL                                                     
         10      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
166.82 ms | 2609 KiB | 14 Q