Forum


Replies: 2   Views: 394
Error al cargar clases con un autoloader
Topic closed:
Please note this is an old forum thread. Information in this post may be out-to-date and/or erroneous.
Every phpdocx version includes new features and improvements. Previously unsupported features may have been added to newer releases, or past issues may have been corrected.
We encourage you to download the current phpdocx version and check the Documentation available.

Posted by rmartinez  · 27-11-2023 - 08:37

Buenos días.

Al actualizar de phpdocx 13.5 a phpdocx 14.0, me tira un error al obtener propiedades del documento Word.

En concreto, tengo el siguiente método que con la versión 13.5 me funciona correctamente:

public static function getRevision($docx_path){
    $indexer = new \Phpdocx\Utilities\Indexer($docx_path);
    $output = $indexer->getOutput();
    return $output['properties']['core']['revision'];
}

Sin embargo, con la versión 14.0, me tira el siguiente error en la línea 203 del fichero phpdocx/Classes/Phpdocx/Utilities/DOCXStructure.php :

Class 'Phpdocx\Utilities\XmlUtilities' not found

He comprobado que existe un fichero llamado XmlUtilities.php en phpdocx/Classes/Phpdocx/Utilities . ¿Es posible que la clase no se esté cargando? Al actualizar la versión, lo único que hice fue sustituir archivos y añadir mis datos de licencia al archivo phpdocxconfig.ini. ¿Es posible que tenga que hacer algo más?

Gracias.

Saludos.

Posted by admin  · 27-11-2023 - 08:47

Hola,

Si estás utilizando Composer tienes que actualizar su autoloader. No es suficiente con copiar las clases si estás utilizando un autoloader (https://www.phpdocx.com/documentation/cookbook/integrate-phpdocx-with-composer), tienes que regenerar el listado de clases a autocargar:

composer dump-autoload

Por favor ten en cuenta que esto es común en Composer y en cualquier autoloader externo que cachee las clases a cargar. No es una cuestión exclusiva de phpdocx, sino de cualquier otra biblioteca externa que integres.

Saludos

Posted by rmartinez  · 27-11-2023 - 09:50

Sabía que me faltaba algo. Ahora está funcionando perfectamente.

Muchas gracias.