PHP Doku:: Erzeugt einen neuen XMLWriter, der Stringausgaben in den Speicher schreibt - function.xmlwriter-open-memory.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzXML-ManipulationXMLWriterXMLWriter FunktionenXMLWriter::openMemory

Ein Service von Reinhard Neidl - Webprogrammierung.

XMLWriter Funktionen

<<XMLWriter->fullEndElement

XMLWriter->openURI>>

XMLWriter::openMemory

(PHP 5 >= 5.1.2, PECL xmlwriter >= 0.1.0)

XMLWriter::openMemoryErzeugt einen neuen XMLWriter, der Stringausgaben in den Speicher schreibt

Beschreibung

Objektorientierter Stil

bool XMLWriter::openMemory ( void )

Prozeduraler Stil

resource xmlwriter_open_memory ( void )

Erzeugt einen neuen XMLWriter, der Stringausgaben in den Speicher schreibt.

Parameter-Liste

Rückgabewerte

Objektorientierter Stil: Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.

Prozeduraler Stil: Gibt bei Erfolg eine neue XMLWriter-Ressource zurück, die später für XMLWriter-Funktionen verwendet werden kann. Im Fehlerfall wird FALSE zurückgegeben.

Siehe auch


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
prashant at prashantpatil dot net
27.04.2010 3:40
Here is an simple example of using openMemory. This is particularly useful when you are handling a large amount of data and you want to split the xml creation in batches.

<?php
$batchSize
= 25;
$xmlWriter = new XMLWriter();
$xmlWriter->openUri('php://output');
$xmlWriter->setIndent(true);
if(
$xmlWriter)
{
 
$xmlWriter->startDocument('1.0','UTF-8');
 
$xmlWriter->startElement('Books');
 
 
$memXmlWriter = new XMLWriter();
 
 
$memXmlWriter->openMemory();
 
$memXmlWriter->setIndent(true);
 
  for(
$i=1;$i<=1000;$i++)
  {
   
$memXmlWriter->startElement('book');
     
$memXmlWriter->text('book_'.$i);
   
$memXmlWriter->endElement();
   
    if(
$i%5 == 0)
    {
     
$batchXmlString = $memXmlWriter->outputMemory(true);
     
$xmlWriter->writeRaw($batchXmlString);
    }
  }
 
$memXmlWriter->flush();
  unset(
$memXmlWriter);
 
$xmlWriter->endElement();
 
$xmlWriter->endDocument(); 
}
?>



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)