3v4l.org

run code in 300+ PHP versions simultaneously
<?php define( 'FLOAT', ';\s*?q= (1|0 # 1 or 0 (\. # Literal dot ([0-9]{1,2}[1-9]| # One or Two Zeroes followed by 1...9 -OR- [0-9][1-9][0-9]?| # Zero followed by 1...9, followed by an optional 0...9 -OR- [1-9] # 1...9 followed by: ([0-9]{0,2}| # None and up to Two 0...9 -OR- [0-9][1-9]| # 0...9 and then followed by 1...9 -OR- [1-9]{1,2} # 1...9 once and up to three ) )(?![0-9]) )? # All this is optional, and refers to float range (?!\.) )' ); preg_match( sprintf( '@(?<params>%s)@x', FLOAT ), ';q=0.3444', $matches ); var_dump( $matches );
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/GZ9MZ
function name:  (null)
number of ops:  18
compiled vars:  !0 = $matches
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'define'
    5     1        SEND_VAL                                                 'FLOAT'
    7     2        SEND_VAL                                                 '%3B%5Cs%2A%3Fq%3D%0A++++%281%7C0++++++++++++++++++++++++++++%23+1+or+0%0A++++++++%28%5C.+++++++++++++++++++++++++%23+Literal+dot%0A++++++++++++%28%5B0-9%5D%7B1%2C2%7D%5B1-9%5D%7C+++++++%23+One+or+Two+Zeroes+followed+by+1...9+-OR-%0A+++++++++++++%5B0-9%5D%5B1-9%5D%5B0-9%5D%3F%7C++++++%23+Zero+followed+by+1...9%2C+followed+by+an+optional+0...9+-OR-%0A+++++++++++++%5B1-9%5D++++++++++++++++++%23+1...9+followed+by%3A%0A++++++++++++++++%28%5B0-9%5D%7B0%2C2%7D%7C++++++++%23+None+and+up+to+Two+0...9+-OR-%0A+++++++++++++++++%5B0-9%5D%5B1-9%5D%7C++++++++%23+0...9+and+then+followed+by+1...9+-OR-%0A+++++++++++++++++%5B1-9%5D%7B1%2C2%7D+++++++++%23+1...9+once+and+up+to+three%0A++++++++++++++++%29%0A+++++++++++++%29%28%3F%21%5B0-9%5D%29%0A++++++++%29%3F++++++++++++++++++++++++++%23+All+this+is+optional%2C+and+refers+to+float+range%0A++++++++%28%3F%21%5C.%29%0A++++%29'
          3        DO_ICALL                                                 
   23     4        INIT_FCALL                                               'preg_match'
          5        INIT_FCALL                                               'sprintf'
          6        SEND_VAL                                                 '%40%28%3F%3Cparams%3E%25s%29%40x'
          7        FETCH_CONSTANT                                   ~2      'FLOAT'
          8        SEND_VAL                                                 ~2
          9        DO_ICALL                                         $3      
         10        SEND_VAR                                                 $3
         11        SEND_VAL                                                 '%3Bq%3D0.3444'
         12        SEND_REF                                                 !0
         13        DO_ICALL                                                 
   25    14        INIT_FCALL                                               'var_dump'
         15        SEND_VAR                                                 !0
         16        DO_ICALL                                                 
         17      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
161.69 ms | 1395 KiB | 21 Q