3v4l.org

run code in 300+ PHP versions simultaneously
<?php mb_internal_encoding('UTF-8'); $html = <<< HTML <!doctype html> <html> <head> <meta charset="utf-8" /> <title>Test Page</title> </head> <body> <p>One two Three&nbsp;fourfive six</p> </body> </html> HTML; $html = mb_convert_encoding($html, 'HTML-ENTITIES', "UTF-8"); $dom = new DOMDocument; $dom->loadHTML($html); $xpath = new DOMXPath($dom); $query = $xpath->query("/html/body"); $body = $dom->saveXML($query->item(0)); echo end(explode("Three four", strip_tags(str_replace('&nbsp;', ' ', $html)))); echo end(explode("Three four", strip_tags(str_replace('&#xA0;', ' ', $body))));
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/mO7S0
function name:  (null)
number of ops:  64
compiled vars:  !0 = $html, !1 = $dom, !2 = $xpath, !3 = $query, !4 = $body
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'mb_internal_encoding'
          1        SEND_VAL                                                 'UTF-8'
          2        DO_ICALL                                                 
    4     3        ASSIGN                                                   !0, '%3C%21doctype+html%3E%0A%3Chtml%3E%0A%3Chead%3E%0A%09%3Cmeta+charset%3D%22utf-8%22+%2F%3E%0A%09%3Ctitle%3ETest+Page%3C%2Ftitle%3E%0A%3C%2Fhead%3E%0A%3Cbody%3E%0A%3Cp%3EOne+two+Three%26nbsp%3Bfourfive+six%3C%2Fp%3E%0A%3C%2Fbody%3E%0A%3C%2Fhtml%3E'
   16     4        INIT_FCALL                                               'mb_convert_encoding'
          5        SEND_VAR                                                 !0
          6        SEND_VAL                                                 'HTML-ENTITIES'
          7        SEND_VAL                                                 'UTF-8'
          8        DO_ICALL                                         $7      
          9        ASSIGN                                                   !0, $7
   17    10        NEW                                              $9      'DOMDocument'
         11        DO_FCALL                                      0          
         12        ASSIGN                                                   !1, $9
   18    13        INIT_METHOD_CALL                                         !1, 'loadHTML'
         14        SEND_VAR_EX                                              !0
         15        DO_FCALL                                      0          
   19    16        NEW                                              $13     'DOMXPath'
         17        SEND_VAR_EX                                              !1
         18        DO_FCALL                                      0          
         19        ASSIGN                                                   !2, $13
   20    20        INIT_METHOD_CALL                                         !2, 'query'
         21        SEND_VAL_EX                                              '%2Fhtml%2Fbody'
         22        DO_FCALL                                      0  $16     
         23        ASSIGN                                                   !3, $16
   21    24        INIT_METHOD_CALL                                         !1, 'saveXML'
         25        INIT_METHOD_CALL                                         !3, 'item'
         26        SEND_VAL_EX                                              0
         27        DO_FCALL                                      0  $18     
         28        SEND_VAR_NO_REF_EX                                       $18
         29        DO_FCALL                                      0  $19     
         30        ASSIGN                                                   !4, $19
   23    31        INIT_FCALL                                               'end'
         32        INIT_FCALL                                               'explode'
         33        SEND_VAL                                                 'Three+four'
         34        INIT_FCALL                                               'strip_tags'
         35        INIT_FCALL                                               'str_replace'
         36        SEND_VAL                                                 '%26nbsp%3B'
         37        SEND_VAL                                                 '+'
         38        SEND_VAR                                                 !0
         39        DO_ICALL                                         $21     
         40        SEND_VAR                                                 $21
         41        DO_ICALL                                         $22     
         42        SEND_VAR                                                 $22
         43        DO_ICALL                                         $23     
         44        SEND_VAR_NO_REF                               0          $23
         45        DO_ICALL                                         $24     
         46        ECHO                                                     $24
   24    47        INIT_FCALL                                               'end'
         48        INIT_FCALL                                               'explode'
         49        SEND_VAL                                                 'Three+four'
         50        INIT_FCALL                                               'strip_tags'
         51        INIT_FCALL                                               'str_replace'
         52        SEND_VAL                                                 '%26%23xA0%3B'
         53        SEND_VAL                                                 '+'
         54        SEND_VAR                                                 !4
         55        DO_ICALL                                         $25     
         56        SEND_VAR                                                 $25
         57        DO_ICALL                                         $26     
         58        SEND_VAR                                                 $26
         59        DO_ICALL                                         $27     
         60        SEND_VAR_NO_REF                               0          $27
         61        DO_ICALL                                         $28     
         62        ECHO                                                     $28
         63      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
162.47 ms | 1392 KiB | 25 Q