3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xml = '<?xml version="1.0" encoding="UTF-8"?>' . '<b:book xmlns:b="urn:irrelevant">' . '<b:chapter>Once upon a time</b:chapter>' . '</b:book>'; $doc = new DOMDocument(); $doc->loadXML($xml); $book = $doc->documentElement; $chapter = $book->getElementsByTagName("chapter")->item(0); echo "book nsURI before: ", $book->namespaceURI, "\n"; // prints "book nsURI before: urn:irrelevant" $nsuri = $book->namespaceURI; $book->removeChild($chapter); echo "book nsURI after: ", $book->namespaceURI, "\n"; // prints "book nsURI after: urn:irrelevant" // fails with "Cannot write property" $book->namespaceURI = $nsuri;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/SbSPO
function name:  (null)
number of ops:  32
compiled vars:  !0 = $xml, !1 = $doc, !2 = $book, !3 = $chapter, !4 = $nsuri
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   ASSIGN                                                   !0, '%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%3Cb%3Abook+xmlns%3Ab%3D%22urn%3Airrelevant%22%3E%3Cb%3Achapter%3EOnce+upon+a+time%3C%2Fb%3Achapter%3E%3C%2Fb%3Abook%3E'
    8     1        NEW                                              $6      'DOMDocument'
          2        DO_FCALL                                      0          
          3        ASSIGN                                                   !1, $6
    9     4        INIT_METHOD_CALL                                         !1, 'loadXML'
          5        SEND_VAR_EX                                              !0
          6        DO_FCALL                                      0          
   11     7        FETCH_OBJ_R                                      ~10     !1, 'documentElement'
          8        ASSIGN                                                   !2, ~10
   12     9        INIT_METHOD_CALL                                         !2, 'getElementsByTagName'
         10        SEND_VAL_EX                                              'chapter'
         11        DO_FCALL                                      0  $12     
         12        INIT_METHOD_CALL                                         $12, 'item'
         13        SEND_VAL_EX                                              0
         14        DO_FCALL                                      0  $13     
         15        ASSIGN                                                   !3, $13
   13    16        ECHO                                                     'book+nsURI+before%3A+'
         17        FETCH_OBJ_R                                      ~15     !2, 'namespaceURI'
         18        ECHO                                                     ~15
         19        ECHO                                                     '%0A'
   16    20        FETCH_OBJ_R                                      ~16     !2, 'namespaceURI'
         21        ASSIGN                                                   !4, ~16
   17    22        INIT_METHOD_CALL                                         !2, 'removeChild'
         23        SEND_VAR_EX                                              !3
         24        DO_FCALL                                      0          
   18    25        ECHO                                                     'book+nsURI+after%3A+'
         26        FETCH_OBJ_R                                      ~19     !2, 'namespaceURI'
         27        ECHO                                                     ~19
         28        ECHO                                                     '%0A'
   22    29        ASSIGN_OBJ                                               !2, 'namespaceURI'
         30        OP_DATA                                                  !4
         31      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
153.85 ms | 1395 KiB | 13 Q