3v4l.org

run code in 300+ PHP versions simultaneously
<?php $var = '<function controlid="foobar"><create_potransaction><transactiontype>Item Receipt</transactiontype><datecreated><year>2016</year><month>12</month><day>07</day></datecreated><vendorid>49041</vendorid><documentno>IR-400206</documentno><datedue><year>2016</year><month>12</month><day>09</day></datedue><returnto><contactname>Johnny on the Spot Porta Potties LLC - Lexington, IL</contactname></returnto><payto><contactname>Johnny on the Spot Porta Potties LLC - Lexington, IL</contactname></payto><customfields><customfield><customfieldname>audit_notes</customfieldname><customfieldvalue>Site Add: 1301 South Main Street, Type: Construction Standard , Quantity: 2 – On Call, hStdChg: $70, hDeliv: $ 0, hRemove: 0, hBilling: 28 Days, hXtraServ: 0, hOther: 0, hFuel%: 0, hFuel$: 0, hTax%: 0, cStdChg: $155, cDeliv: $ 0, cRemove: 0, cBilling: 28 Days, cXtraServ: 0, cOther: 0, cTax%: 0, PO/Job Number: ----------- Profit Margin of $170 or 54.8%</customfieldvalue></customfield></customfields><potransitems><potransitem><itemid>50110</itemid><itemdesc>Normal, IL 61761'; $endash = html_entity_decode('\u0096', ENT_COMPAT, 'UTF-8'); $str = str_replace(chr(150), "-", $var);//&#194;&#150; $str = str_replace(chr(194), "-", $str);//&#194;&#150; $string = filter_var($var, FILTER_SANITIZE_SPECIAL_CHARS, FILTER_FLAG_ENCODE_HIGH); var_dump(is_numeric(-5)); //echo $str;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/1QmJQ
function name:  (null)
number of ops:  32
compiled vars:  !0 = $var, !1 = $endash, !2 = $str, !3 = $string
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%3Cfunction+controlid%3D%22foobar%22%3E%3Ccreate_potransaction%3E%3Ctransactiontype%3EItem+Receipt%3C%2Ftransactiontype%3E%3Cdatecreated%3E%3Cyear%3E2016%3C%2Fyear%3E%3Cmonth%3E12%3C%2Fmonth%3E%3Cday%3E07%3C%2Fday%3E%3C%2Fdatecreated%3E%3Cvendorid%3E49041%3C%2Fvendorid%3E%3Cdocumentno%3EIR-400206%3C%2Fdocumentno%3E%3Cdatedue%3E%3Cyear%3E2016%3C%2Fyear%3E%3Cmonth%3E12%3C%2Fmonth%3E%3Cday%3E09%3C%2Fday%3E%3C%2Fdatedue%3E%3Creturnto%3E%3Ccontactname%3EJohnny+on+the+Spot+Porta+Potties+LLC+-+Lexington%2C+IL%3C%2Fcontactname%3E%3C%2Freturnto%3E%3Cpayto%3E%3Ccontactname%3EJohnny+on+the+Spot+Porta+Potties+LLC+-+Lexington%2C+IL%3C%2Fcontactname%3E%3C%2Fpayto%3E%3Ccustomfields%3E%3Ccustomfield%3E%3Ccustomfieldname%3Eaudit_notes%3C%2Fcustomfieldname%3E%3Ccustomfieldvalue%3ESite+Add%3A+1301+South+Main+Street%2C+Type%3A++Construction+Standard+%2C+Quantity%3A+2+%C2%96+On+Call%2C+hStdChg%3A+%2470%2C+hDeliv%3A+%24+0%2C+hRemove%3A+0%2C+hBilling%3A+28+Days%2C+hXtraServ%3A+0%2C+hOther%3A+0%2C+hFuel%25%3A+0%2C+hFuel%24%3A+0%2C+hTax%25%3A+0%2C+cStdChg%3A+%24155%2C+cDeliv%3A+%24+0%2C+cRemove%3A+0%2C+cBilling%3A+28+Days%2C+cXtraServ%3A+0%2C+cOther%3A+0%2C+cTax%25%3A+0%2C+PO%2FJob+Number%3A++-----------+Profit+Margin+of+%24170+or+54.8%25%3C%2Fcustomfieldvalue%3E%3C%2Fcustomfield%3E%3C%2Fcustomfields%3E%3Cpotransitems%3E%3Cpotransitem%3E%3Citemid%3E50110%3C%2Fitemid%3E%3Citemdesc%3ENormal%2C+IL+61761'
    6     1        INIT_FCALL                                               'html_entity_decode'
          2        SEND_VAL                                                 '%5Cu0096'
          3        SEND_VAL                                                 2
          4        SEND_VAL                                                 'UTF-8'
          5        DO_ICALL                                         $5      
          6        ASSIGN                                                   !1, $5
    7     7        INIT_FCALL                                               'str_replace'
          8        SEND_VAL                                                 '%96'
          9        SEND_VAL                                                 '-'
         10        SEND_VAR                                                 !0
         11        DO_ICALL                                         $7      
         12        ASSIGN                                                   !2, $7
    8    13        INIT_FCALL                                               'str_replace'
         14        SEND_VAL                                                 '%C2'
         15        SEND_VAL                                                 '-'
         16        SEND_VAR                                                 !2
         17        DO_ICALL                                         $9      
         18        ASSIGN                                                   !2, $9
   10    19        INIT_FCALL                                               'filter_var'
         20        SEND_VAR                                                 !0
         21        SEND_VAL                                                 515
         22        SEND_VAL                                                 32
         23        DO_ICALL                                         $11     
         24        ASSIGN                                                   !3, $11
   12    25        INIT_FCALL                                               'var_dump'
         26        INIT_FCALL                                               'is_numeric'
         27        SEND_VAL                                                 -5
         28        DO_ICALL                                         $13     
         29        SEND_VAR                                                 $13
         30        DO_ICALL                                                 
   14    31      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
173.08 ms | 1400 KiB | 23 Q