3v4l.org

run code in 500+ PHP versions simultaneously
<?php $html = '<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><div id="div1"><div id="div2">222</div><div id="div3">333</div></div></body></html>'; $doc = new DOMDocument; libxml_use_internal_errors(true); $doc->loadHTML($html); $div1=$doc->getElementById('div1'); $div2=$doc->getElementById('div2'); $div3=$doc->getElementById('div3'); print_r($div2); print_r($div3); $div1->nodeValue=''; $div1->appendChild($doc->createTextNode(html_entity_decode('111'))); print_r(array($div2,$div2->parentNode)); print_r(array($div3,$div3->parentNode)); $div3->parentNode->removeChild($div3); echo $doc->saveHTML();
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/IpKCv
function name:  (null)
number of ops:  59
compiled vars:  !0 = $html, !1 = $doc, !2 = $div1, !3 = $div2, !4 = $div3
line      #* E I O op                               fetch          ext  return  operands
-----------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                       !0, '%3C%21DOCTYPE+html%3E%3Chtml%3E%3Chead%3E%3Cmeta+http-equiv%3D%22Content-Type%22+content%3D%22text%2Fhtml%3B+charset%3Dutf-8%22%3E%3C%2Fhead%3E%3Cbody%3E%3Cdiv+id%3D%22div1%22%3E%3Cdiv+id%3D%22div2%22%3E222%3C%2Fdiv%3E%3Cdiv+id%3D%22div3%22%3E333%3C%2Fdiv%3E%3C%2Fdiv%3E%3C%2Fbody%3E%3C%2Fhtml%3E'
    4     1        NEW                                                  $6      'DOMDocument'
          2        DO_FCALL                                          0          
          3        ASSIGN                                                       !1, $6
    5     4        INIT_FCALL                                                   'libxml_use_internal_errors'
          5        SEND_VAL                                                     <true>
          6        DO_ICALL                                                     
    6     7        INIT_METHOD_CALL                                             !1, 'loadHTML'
          8        SEND_VAR_EX                                                  !0
          9        DO_FCALL                                          0          
    7    10        INIT_METHOD_CALL                                             !1, 'getElementById'
         11        SEND_VAL_EX                                                  'div1'
         12        DO_FCALL                                          0  $11     
         13        ASSIGN                                                       !2, $11
    8    14        INIT_METHOD_CALL                                             !1, 'getElementById'
         15        SEND_VAL_EX                                                  'div2'
         16        DO_FCALL                                          0  $13     
         17        ASSIGN                                                       !3, $13
    9    18        INIT_METHOD_CALL                                             !1, 'getElementById'
         19        SEND_VAL_EX                                                  'div3'
         20        DO_FCALL                                          0  $15     
         21        ASSIGN                                                       !4, $15
   10    22        INIT_FCALL                                                   'print_r'
         23        SEND_VAR                                                     !3
         24        DO_ICALL                                                     
   11    25        INIT_FCALL                                                   'print_r'
         26        SEND_VAR                                                     !4
         27        DO_ICALL                                                     
   13    28        ASSIGN_OBJ                                                   !2, 'nodeValue'
         29        OP_DATA                                                      ''
   14    30        INIT_METHOD_CALL                                             !2, 'appendChild'
         31        INIT_METHOD_CALL                                             !1, 'createTextNode'
         32        INIT_FCALL                                                   'html_entity_decode'
         33        SEND_VAL                                                     '111'
         34        DO_ICALL                                             $20     
         35        SEND_VAR_NO_REF_EX                                           $20
         36        DO_FCALL                                          0  $21     
         37        SEND_VAR_NO_REF_EX                                           $21
         38        DO_FCALL                                          0          
   16    39        INIT_FCALL                                                   'print_r'
         40        INIT_ARRAY                                           ~23     !3
         41        FETCH_OBJ_R                                          ~24     !3, 'parentNode'
         42        ADD_ARRAY_ELEMENT                                    ~23     ~24
         43        SEND_VAL                                                     ~23
         44        DO_ICALL                                                     
   17    45        INIT_FCALL                                                   'print_r'
         46        INIT_ARRAY                                           ~26     !4
         47        FETCH_OBJ_R                                          ~27     !4, 'parentNode'
         48        ADD_ARRAY_ELEMENT                                    ~26     ~27
         49        SEND_VAL                                                     ~26
         50        DO_ICALL                                                     
   18    51        FETCH_OBJ_R                                          ~29     !4, 'parentNode'
         52        INIT_METHOD_CALL                                             ~29, 'removeChild'
         53        SEND_VAR_EX                                                  !4
         54        DO_FCALL                                          0          
   19    55        INIT_METHOD_CALL                                             !1, 'saveHTML'
         56        DO_FCALL                                          0  $31     
         57        ECHO                                                         $31
         58      > RETURN                                                       1

Generated using Vulcan Logic Dumper, using php 8.5.0


preferences:
184.69 ms | 4800 KiB | 16 Q