Frage

Wie würden Sie odt-Dateien in PHP gehen zu lesen? Ich weiß, Sie QueryPath verwenden können, aber das scheint ein bisschen zuviel des Guten, .. Ich möchte nur die Datei lesen.

War es hilfreich?

Lösung

odt, werden die Dateien zip komprimiert xml.

Wenn alles, was Sie tun müssen, ist die Datei roh lesen. Entpacken Sie es und es wie eine normale Datei lesen.

Wenn Sie verwendbaren Text zu analysieren, dann tritt die Notwendigkeit QueryPath oder ein anderen Xslt Parser.

Andere Tipps

OpenTBS ist in der Lage OpenDocument- Dateien in PHP zu lesen und ändern.

Da OpenDocument- Dateien sind XML-Dateien in einem Zip-Archiv gespeichert werden, können Sie auch die TbsZip Klasse einfach ein Zip-Archiv unter PHP ohne jede andere Bibliothek Abhängigkeit lesen.

http://pear.php.net/package/OpenDocument können, was Sie brauchen . Habe es selbst nicht verwendet, aber.

/*Name of the document file*/
$document = 'Template.odt';

/**Function to extract text*/
function extracttext($filename) {

    $dataFile = "content.xml";     

    //Create a new ZIP archive object
    $zip = new ZipArchive;

    // Open the archive file
    if (true === $zip->open($filename)) {
        // If successful, search for the data file in the archive
        if (($index = $zip->locateName($dataFile)) !== false) {
            // Index found! Now read it to a string
            $text = $zip->getFromIndex($index);
            // Load XML from a string
            // Ignore errors and warnings
            $xml = new DOMDocument;
            $xml->loadXML($text, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
            // Return XML
            return $xml->saveXML();
        }
        //Close the archive file
        $zip->close();
    }   
    // In case of failure return a message
    return "File no`enter code here`t found";
}

echo extracttext($document);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top