3v4l.org

run code in 300+ PHP versions simultaneously
<?php $xml = <<<'XML' <?xml version="1.0" encoding="UTF-8"?> <resume> <personal_info> <birthdate>07/08/1988</birthdate> </personal_info> <jobs> <job> <company>Radio Shack</company> <title>Sales Representative</title> <startdate>01/01/2011</startdate> <enddate>02/02/2011</enddate> <duration>1.5yrs</duration> <sortdate>20110101</sortdate> </job> <job> <company>Radio Shack2</company> <title>Sales Representative</title> <startdate>01/01/2013</startdate> <enddate>02/02/2013</enddate> <duration>1.5yrs</duration> <sortdate>20130202</sortdate> </job> </jobs> </resume> XML; $xslt = <<<'XSLT' <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>My Word Download</h2> <xsl:for-each select="resume/jobs/job"> <xsl:sort select="sortdate" data-type="number" order="descending" /> <div> <xsl:value-of select="company" /> - <xsl:value-of select="title"/> </div> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet> XSLT; $xmlDom = new DOMDocument(); $xmlDom->loadXml($xml); $xslDom = new DOMDocument(); //$xslDOM->load($xsltFile); $xslDom->loadXml($xslt); $processor = new XsltProcessor(); $processor->importStylesheet($xslDom); echo $processor->transformToXml($xmlDom);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/5v5S7
function name:  (null)
number of ops:  25
compiled vars:  !0 = $xml, !1 = $xslt, !2 = $xmlDom, !3 = $xslDom, !4 = $processor
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%0A%3Cresume%3E%0A++++%3Cpersonal_info%3E%0A++++++++%3Cbirthdate%3E07%2F08%2F1988%3C%2Fbirthdate%3E%0A++++%3C%2Fpersonal_info%3E%0A++++%3Cjobs%3E%0A++++++++%3Cjob%3E%0A++++++++++++%3Ccompany%3ERadio+Shack%3C%2Fcompany%3E%0A++++++++++++%3Ctitle%3ESales+Representative%3C%2Ftitle%3E%0A++++++++++++%3Cstartdate%3E01%2F01%2F2011%3C%2Fstartdate%3E%0A++++++++++++%3Cenddate%3E02%2F02%2F2011%3C%2Fenddate%3E%0A++++++++++++%3Cduration%3E1.5yrs%3C%2Fduration%3E%0A++++++++++++%3Csortdate%3E20110101%3C%2Fsortdate%3E%0A++++++++%3C%2Fjob%3E%0A++++++++%3Cjob%3E%0A++++++++++++%3Ccompany%3ERadio+Shack2%3C%2Fcompany%3E%0A++++++++++++%3Ctitle%3ESales+Representative%3C%2Ftitle%3E%0A++++++++++++%3Cstartdate%3E01%2F01%2F2013%3C%2Fstartdate%3E%0A++++++++++++%3Cenddate%3E02%2F02%2F2013%3C%2Fenddate%3E%0A++++++++++++%3Cduration%3E1.5yrs%3C%2Fduration%3E%0A++++++++++++%3Csortdate%3E20130202%3C%2Fsortdate%3E%0A++++++++%3C%2Fjob%3E%0A++++%3C%2Fjobs%3E%0A%3C%2Fresume%3E'
   30     1        ASSIGN                                                   !1, '%3C%3Fxml+version%3D%221.0%22+encoding%3D%22UTF-8%22%3F%3E%0A%3Cxsl%3Astylesheet+version%3D%221.0%22%0Axmlns%3Axsl%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2FXSL%2FTransform%22%3E%0A%0A%3Cxsl%3Atemplate+match%3D%22%2F%22%3E%0A++%3Chtml%3E%0A++%3Cbody%3E%0A++%3Ch2%3EMy+Word+Download%3C%2Fh2%3E%0A++++++++%3Cxsl%3Afor-each+select%3D%22resume%2Fjobs%2Fjob%22%3E%0A++++++++%3Cxsl%3Asort+select%3D%22sortdate%22+data-type%3D%22number%22+order%3D%22descending%22+%2F%3E%0A++++++++%3Cdiv%3E%0A%0A++++++++++++%3Cxsl%3Avalue-of+select%3D%22company%22+%2F%3E+-+%3Cxsl%3Avalue-of+select%3D%22title%22%2F%3E%0A++++++++%3C%2Fdiv%3E%0A++++++%3C%2Fxsl%3Afor-each%3E%0A++%3C%2Fbody%3E%0A++%3C%2Fhtml%3E%0A%3C%2Fxsl%3Atemplate%3E%0A%0A%3C%2Fxsl%3Astylesheet%3E'
   53     2        NEW                                              $7      'DOMDocument'
          3        DO_FCALL                                      0          
          4        ASSIGN                                                   !2, $7
   54     5        INIT_METHOD_CALL                                         !2, 'loadXml'
          6        SEND_VAR_EX                                              !0
          7        DO_FCALL                                      0          
   55     8        NEW                                              $11     'DOMDocument'
          9        DO_FCALL                                      0          
         10        ASSIGN                                                   !3, $11
   57    11        INIT_METHOD_CALL                                         !3, 'loadXml'
         12        SEND_VAR_EX                                              !1
         13        DO_FCALL                                      0          
   58    14        NEW                                              $15     'XsltProcessor'
         15        DO_FCALL                                      0          
         16        ASSIGN                                                   !4, $15
   59    17        INIT_METHOD_CALL                                         !4, 'importStylesheet'
         18        SEND_VAR_EX                                              !3
         19        DO_FCALL                                      0          
   61    20        INIT_METHOD_CALL                                         !4, 'transformToXml'
         21        SEND_VAR_EX                                              !2
         22        DO_FCALL                                      0  $19     
         23        ECHO                                                     $19
         24      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
149.03 ms | 1399 KiB | 13 Q