PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

XMLReader::readInnerXML> <XMLReader::open
Last updated: Fri, 03 Oct 2008

view this page in

XMLReader::read

(PHP 5 >= 5.1.2)

XMLReader::readDéplace le curseur sur le prochain noeud du document

Description

bool XMLReader::read ( void )

Déplace le curseur au prochain noeud texte du document.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.



add a note add a note User Contributed Notes
XMLReader::read
jirka at kosek dot cz
08-Feb-2006 10:01
libxml2 contains much more useful method readString() that will read and return whole text content of element. You can call it after receiving start tag (XMLReader::ELEMENT). You can use this PHP code to emulate this method until PHP will directly call underlying libxml2 implementation.

<?php
class XMLReader2 extends XMLReader
{
  function
readString()
  {
       
$depth = 1;
       
$text = "";

        while (
$this->read() && $depth != 0)
        {
            if (
in_array($this->nodeType, array(XMLReader::TEXT, XMLReader::CDATA, XMLReader::WHITESPACE, XMLReader::SIGNIFICANT_WHITESPACE)))
               
$text .= $this->value;
            if (
$this->nodeType == XMLReader::ELEMENT) $depth++;
            if (
$this->nodeType == XMLReader::END_ELEMENT) $depth--;
        }
        return
$text;
    }
}
?>

Just use XMLReader2 instead of XMLReader.

XMLReader::readInnerXML> <XMLReader::open
Last updated: Fri, 03 Oct 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites