Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-release > by-pkgid > 6ffb2d81e81c413af6a70ac5c5fef2d8 > files > 4

php-pear-XML_HTMLSax3-3.0.0-12.mga7.noarch.rpm

<?php
/**
* @version $Id: ExpatvsHtmlSax.php,v 1.3 2004/06/02 14:33:38 hfuecks Exp $
* Shows HTMLSax in a race against Expat. Note that HTMLSax performance
* gets slower on PHP < 4.3.0 or if parser options are being used
*/
require_once('XML/HTMLSax3.php');

function getmicrotime(){ 
    list($usec, $sec) = explode(" ",microtime()); 
    return ((float)$usec + (float)$sec); 
}

// The PHP general RDF feed
$doc = file_get_contents('http://news.php.net/group.php?group=php.general&format=rdf');

/* Simple handler that does nothing */
class MyHandler {
    function openHandler(& $parser,$name,$attrs) {}
    function closeHandler(& $parser,$name) {}
    function dataHandler(& $parser,$data) {}
}
$handler=& new MyHandler();


$parser = xml_parser_create();
xml_set_object($parser, $handler);
xml_set_element_handler($parser, 'openHandler', 'closeHandler' );
xml_set_character_data_handler($parser, 'dataHandler' );

echo ('<pre>');
// Time Expat
$start = getmicrotime();
xml_parse($parser, $doc);
$end = getmicrotime();
echo ( "Expat took:\t\t".(getmicrotime()-$start)."<br />" );

$start = getmicrotime();
$parser =& new XML_HTMLSax3();
$parser->set_object($handler);
$parser->set_element_handler('openHandler','closeHandler');
$parser->set_data_handler('dataHandler');

// Time HTMLSax
$start = getmicrotime();
$parser->parse($doc);
echo ( "HTMLSax took:\t\t".(getmicrotime()-$start) );
echo ('</pre>');
?>