3v4l.org

run code in 300+ PHP versions simultaneously
<?php $regex = "#\b(?:(?:[[:alpha:]]+\://)|www\.)(?:(?:[-[:alnum:]]+\.)*[-[:alnum:]]+(?::\d+)?)(?:/(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/]|(?:%[[:xdigit:]]{2}))*)?(?:\?(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/\?]|(?:%[[:xdigit:]]{2}))*)?(?:\#(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/\?]|(?:%[[:xdigit:]]{2}))*)?#m"; $unicodeRegex = "#\b(?:(?:[[:alpha:]]+\://)|www\.)(?:(?:[-[:alnum:]]+\.)*[-[:alnum:]]+(?::\d+)?)(?:/(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/]|(?:%[[:xdigit:]]{2}))*)?(?:\?(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/\?]|(?:%[[:xdigit:]]{2}))*)?(?:\#(?:[[:alnum:]\-\._~\!\$&'\(\)\*\+,;\=\:@/\?]|(?:%[[:xdigit:]]{2}))*)?#um"; $source = '取りhttp://foo.com/somepathによると'; preg_match_all($regex, $source, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE); var_dump($matches[0][0][0]); preg_match_all($unicodeRegex, $source, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE); var_dump($matches[0][0][0]); var_dump(PCRE_VERSION);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/5dURm
function name:  (null)
number of ops:  31
compiled vars:  !0 = $regex, !1 = $unicodeRegex, !2 = $source, !3 = $matches
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%23%5Cb%28%3F%3A%28%3F%3A%5B%5B%3Aalpha%3A%5D%5D%2B%5C%3A%2F%2F%29%7Cwww%5C.%29%28%3F%3A%28%3F%3A%5B-%5B%3Aalnum%3A%5D%5D%2B%5C.%29%2A%5B-%5B%3Aalnum%3A%5D%5D%2B%28%3F%3A%3A%5Cd%2B%29%3F%29%28%3F%3A%2F%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%28%3F%3A%5C%3F%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5C%3F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%28%3F%3A%5C%23%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5C%3F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%23m'
    5     1        ASSIGN                                                   !1, '%23%5Cb%28%3F%3A%28%3F%3A%5B%5B%3Aalpha%3A%5D%5D%2B%5C%3A%2F%2F%29%7Cwww%5C.%29%28%3F%3A%28%3F%3A%5B-%5B%3Aalnum%3A%5D%5D%2B%5C.%29%2A%5B-%5B%3Aalnum%3A%5D%5D%2B%28%3F%3A%3A%5Cd%2B%29%3F%29%28%3F%3A%2F%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%28%3F%3A%5C%3F%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5C%3F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%28%3F%3A%5C%23%28%3F%3A%5B%5B%3Aalnum%3A%5D%5C-%5C._%7E%5C%21%24%26%27%5C%28%5C%29%5C%2A%5C%2B%2C%3B%5C%3D%5C%3A%40%2F%5C%3F%5D%7C%28%3F%3A%25%5B%5B%3Axdigit%3A%5D%5D%7B2%7D%29%29%2A%29%3F%23um'
    7     2        ASSIGN                                                   !2, '%E5%8F%96%E3%82%8Ahttp%3A%2F%2Ffoo.com%2Fsomepath%E3%81%AB%E3%82%88%E3%82%8B%E3%81%A8'
    8     3        INIT_FCALL                                               'preg_match_all'
          4        SEND_VAR                                                 !0
          5        SEND_VAR                                                 !2
          6        SEND_REF                                                 !3
          7        SEND_VAL                                                 258
          8        DO_ICALL                                                 
    9     9        INIT_FCALL                                               'var_dump'
         10        FETCH_DIM_R                                      ~8      !3, 0
         11        FETCH_DIM_R                                      ~9      ~8, 0
         12        FETCH_DIM_R                                      ~10     ~9, 0
         13        SEND_VAL                                                 ~10
         14        DO_ICALL                                                 
   11    15        INIT_FCALL                                               'preg_match_all'
         16        SEND_VAR                                                 !1
         17        SEND_VAR                                                 !2
         18        SEND_REF                                                 !3
         19        SEND_VAL                                                 258
         20        DO_ICALL                                                 
   12    21        INIT_FCALL                                               'var_dump'
         22        FETCH_DIM_R                                      ~13     !3, 0
         23        FETCH_DIM_R                                      ~14     ~13, 0
         24        FETCH_DIM_R                                      ~15     ~14, 0
         25        SEND_VAL                                                 ~15
         26        DO_ICALL                                                 
   14    27        INIT_FCALL                                               'var_dump'
         28        SEND_VAL                                                 '10.35+2020-05-09'
         29        DO_ICALL                                                 
         30      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
166.66 ms | 1400 KiB | 17 Q