3v4l.org

run code in 300+ PHP versions simultaneously
<?php $pattern = '~^ (.*):// # protocol (([\pL\pN-]+:)?([\pL\pN-]+)@)? # basic auth ( ([\pL\pN\pS-\.])+(\.?([\pL]|xn\-\-[\pL\pN-]+)+\.?) # a domain name | # or \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} # a IP address | # or \[ (?:(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){6})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:::(?:(?:(?:[0-9a-f]{1,4})):){5})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){4})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,1}(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){3})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,2}(?:(?:[0-9a-f]{1,4})))?::(?:(?:(?:[0-9a-f]{1,4})):){2})(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,3}(?:(?:[0-9a-f]{1,4})))?::(?:(?:[0-9a-f]{1,4})):)(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,4}(?:(?:[0-9a-f]{1,4})))?::)(?:(?:(?:(?:(?:[0-9a-f]{1,4})):(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9]))\.){3}(?:(?:25[0-5]|(?:[1-9]|1[0-9]|2[0-4])?[0-9])))))))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,5}(?:(?:[0-9a-f]{1,4})))?::)(?:(?:[0-9a-f]{1,4})))|(?:(?:(?:(?:(?:(?:[0-9a-f]{1,4})):){0,6}(?:(?:[0-9a-f]{1,4})))?::)))) \] # a IPv6 address ) (:[0-9]+)? # a port (optional) (/?|/\S+) # a /, nothing or a / with something $~ixu'; var_dump(preg_match($pattern, 'http://www.google.com'));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/eKJNn
function name:  (null)
number of ops:  9
compiled vars:  !0 = $pattern
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%7E%5E%0A++++++++++++%28.%2A%29%3A%2F%2F+++++++++++++++++++++++++++++++++%23+protocol%0A++++++++++++%28%28%5B%5CpL%5CpN-%5D%2B%3A%29%3F%28%5B%5CpL%5CpN-%5D%2B%29%40%29%3F++++++++++%23+basic+auth%0A++++++++++++%28%0A++++++++++++++++%28%5B%5CpL%5CpN%5CpS-%5C.%5D%29%2B%28%5C.%3F%28%5B%5CpL%5D%7Cxn%5C-%5C-%5B%5CpL%5CpN-%5D%2B%29%2B%5C.%3F%29+%23+a+domain+name%0A++++++++++++++++++++%7C++++++++++++++++++++++++++++++++++++++++++++++%23+or%0A++++++++++++++++%5Cd%7B1%2C3%7D%5C.%5Cd%7B1%2C3%7D%5C.%5Cd%7B1%2C3%7D%5C.%5Cd%7B1%2C3%7D+++++++++++++++++%23+a+IP+address%0A++++++++++++++++++++%7C++++++++++++++++++++++++++++++++++++++++++++++%23+or%0A++++++++++++++++%5C%5B%0A++++++++++++++++++++%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B6%7D%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%3A%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B5%7D%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B4%7D%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C1%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B3%7D%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C2%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B2%7D%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C3%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C4%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%29%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%5C.%29%7B3%7D%28%3F%3A%28%3F%3A25%5B0-5%5D%7C%28%3F%3A%5B1-9%5D%7C1%5B0-9%5D%7C2%5B0-4%5D%29%3F%5B0-9%5D%29%29%29%29%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C5%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%29%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%7C%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%3A%29%7B0%2C6%7D%28%3F%3A%28%3F%3A%5B0-9a-f%5D%7B1%2C4%7D%29%29%29%3F%3A%3A%29%29%29%29%0A++++++++++++++++%5C%5D++%23+a+IPv6+address%0A++++++++++++%29%0A++++++++++++%28%3A%5B0-9%5D%2B%29%3F++++++++++++++++++++++++++++++%23+a+port+%28optional%29%0A++++++++++++%28%2F%3F%7C%2F%5CS%2B%29+++++++++++++++++++++++++++++++%23+a+%2F%2C+nothing+or+a+%2F+with+something%0A++++++++%24%7Eixu'
   19     1        INIT_FCALL                                               'var_dump'
          2        INIT_FCALL                                               'preg_match'
          3        SEND_VAR                                                 !0
          4        SEND_VAL                                                 'http%3A%2F%2Fwww.google.com'
          5        DO_ICALL                                         $2      
          6        SEND_VAR                                                 $2
          7        DO_ICALL                                                 
          8      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
168.96 ms | 1400 KiB | 17 Q