Il problema con i .docx è che sono infatti file .zip. Provate a creare un file .docx poi cambiate l'estensione da docx a zip e vedrete molti file xml.
Il problema con i .docx è che sono infatti file .zip. Provate a creare un file .docx poi cambiate l'estensione da docx a zip e vedrete molti file xml.
Ridatemi i miei 1000 posts persi !!!!
Non serve a nulla ottimizzare qualcosa che non funziona.
Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr
con la funzione file() non carica l'intero file ma solo la prima parte a me interessa il segmento document.xml all'interno del file.
avevo trovato una funzione che cattura eccellentemente il testo da un file .odt (open office)
questa:
function readZippedXML($archiveFile, $dataFile) {
$zip = new ZipArchive;
// Open received archive file
if (true === $zip->open($archiveFile)) {
// If done, search for the data file in the archive
if (($index = $zip->locateName($dataFile)) !== false) {
// If found, read it to the string
$data = $zip->getFromIndex($index);
// Close archive file
$zip->close();
// Load XML from a string
// Skip errors and warnings
$xml = DOMDocument::loadXML($data, LIBXML_NOENT | LIBXML_XINCLUDE | LIBXML_NOERROR | LIBXML_NOWARNING);
// Return data without XML formatting tags
return $xml->saveXML();
}
$zip->close();
}
// In case of failure return empty string
return "";
}
$testoword = readZippedXML($filename, "content.xml");