3v4l.org

run code in 300+ PHP versions simultaneously
<?php $string = '[Wed Feb 06 08:57:54 2019] [error] [client 123.123.123.123] ModSecurity: Access denied with code 403 (phase 2). Operator EQ matched 0 at REQUEST_HEADERS. [file "/etc/httpd/modsecurity.d/activated_rules/modsecurity_crs_21_protocol_anomalies.conf"] [line "47"] [id "960015"] [rev "1"] [msg "Request Missing an Accept Header"] [severity "NOTICE"] [ver "OWASP_CRS/2.2.6"] [maturity "9"] [accuracy "9"] [tag "OWASP_CRS/PROTOCOL_VIOLATION/MISSING_HEADER_ACCEPT"] [tag "WASCTC/WASC-21"] [tag "OWASP_TOP_10/A7"] [tag "PCI/6.5.10"] [hostname "something.net"] [uri "/index.php/admin/"] [unique_id "XFsEAsDzZbMAAGY5i5oAAAAA"]'; preg_match_all('/\[([a-z_]+)\s*([^]]*)\]/', $string, $matches); $output = array_combine($matches[1], $matches[2]); $output = array_map(function ($v) { return trim($v, '"'); }, $output); print_r($output);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/l6bvS
function name:  (null)
number of ops:  23
compiled vars:  !0 = $string, !1 = $matches, !2 = $output
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   ASSIGN                                                   !0, '%5BWed+Feb+06+08%3A57%3A54+2019%5D+%5Berror%5D+%5Bclient+123.123.123.123%5D+ModSecurity%3A+Access+denied+with+code+403+%28phase+2%29.+Operator+EQ+matched+0+at+REQUEST_HEADERS.+%5Bfile+%22%2Fetc%2Fhttpd%2Fmodsecurity.d%2Factivated_rules%2Fmodsecurity_crs_21_protocol_anomalies.conf%22%5D+%5Bline+%2247%22%5D+%5Bid+%22960015%22%5D+%5Brev+%221%22%5D+%5Bmsg+%22Request+Missing+an+Accept+Header%22%5D+%5Bseverity+%22NOTICE%22%5D+%5Bver+%22OWASP_CRS%2F2.2.6%22%5D+%5Bmaturity+%229%22%5D+%5Baccuracy+%229%22%5D+%5Btag+%22OWASP_CRS%2FPROTOCOL_VIOLATION%2FMISSING_HEADER_ACCEPT%22%5D+%5Btag+%22WASCTC%2FWASC-21%22%5D+%5Btag+%22OWASP_TOP_10%2FA7%22%5D+%5Btag+%22PCI%2F6.5.10%22%5D+%5Bhostname+%22something.net%22%5D+%5Buri+%22%2Findex.php%2Fadmin%2F%22%5D+%5Bunique_id+%22XFsEAsDzZbMAAGY5i5oAAAAA%22%5D'
    3     1        INIT_FCALL                                               'preg_match_all'
          2        SEND_VAL                                                 '%2F%5C%5B%28%5Ba-z_%5D%2B%29%5Cs%2A%28%5B%5E%5D%5D%2A%29%5C%5D%2F'
          3        SEND_VAR                                                 !0
          4        SEND_REF                                                 !1
          5        DO_ICALL                                                 
    4     6        INIT_FCALL                                               'array_combine'
          7        FETCH_DIM_R                                      ~5      !1, 1
          8        SEND_VAL                                                 ~5
          9        FETCH_DIM_R                                      ~6      !1, 2
         10        SEND_VAL                                                 ~6
         11        DO_ICALL                                         $7      
         12        ASSIGN                                                   !2, $7
    5    13        INIT_FCALL                                               'array_map'
         14        DECLARE_LAMBDA_FUNCTION                          ~9      [0]
         15        SEND_VAL                                                 ~9
         16        SEND_VAR                                                 !2
         17        DO_ICALL                                         $10     
         18        ASSIGN                                                   !2, $10
    6    19        INIT_FCALL                                               'print_r'
         20        SEND_VAR                                                 !2
         21        DO_ICALL                                                 
         22      > RETURN                                                   1


Dynamic Functions:
Dynamic Function 0
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/l6bvS
function name:  {closure}
number of ops:  7
compiled vars:  !0 = $v
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   RECV                                             !0      
          1        INIT_FCALL                                               'trim'
          2        SEND_VAR                                                 !0
          3        SEND_VAL                                                 '%22'
          4        DO_ICALL                                         $1      
          5      > RETURN                                                   $1
          6*     > RETURN                                                   null

End of Dynamic Function 0

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
142.87 ms | 1009 KiB | 18 Q