Skip to content

Commit

Permalink
Añadido autoloader
Browse files Browse the repository at this point in the history
- Creado autoload.php
- Actualizada documentación

> Fixes #162
  • Loading branch information
josemmo committed Aug 3, 2024
1 parent f0026a0 commit f2daacc
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 11 deletions.
21 changes: 21 additions & 0 deletions autoload.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?php
/**
* This file is an extremely simple autoloader for environments where Composer is not available.
*/

spl_autoload_register(static function ($class) {
// Verify we're importing a class from this library
if (mb_strpos($class, 'josemmo\\Facturae\\') !== 0) {
return false;
}

// Find file
$path = __DIR__ . "/src/" . str_replace('\\', '/', mb_substr($class, 17)) . ".php";
if (!file_exists($path)) {
return false;
}

// Import file
require $path;
return true;
});
14 changes: 3 additions & 11 deletions doc/ejemplos/sin-composer.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,10 @@ permalink: /ejemplos/sin-composer.html
# Uso sin Composer
Este ejemplo muestra cómo usar `Facturae-PHP` sin tener configurado un entorno de Composer, solo descargando el código fuente de la librería.

Para ello, se incluye el script "autoload.php" en el directorio raíz, que permite auto-cargar las clases de la librería.

```php
require_once 'ruta/hacia/Facturae-PHP/src/Common/FacturaeSigner.php';
require_once 'ruta/hacia/Facturae-PHP/src/Common/KeyPairReaderTrait.php';
require_once 'ruta/hacia/Facturae-PHP/src/Common/XmlTools.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeTraits/PropertiesTrait.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeTraits/UtilsTrait.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeTraits/SignableTrait.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeTraits/ExportableTrait.php';
require_once 'ruta/hacia/Facturae-PHP/src/Facturae.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeCentre.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeItem.php';
require_once 'ruta/hacia/Facturae-PHP/src/FacturaeParty.php';
require_once 'ruta/hacia/Facturae-PHP/autoload.php'; // <-- Autoloader incluido con la librería

use josemmo\Facturae\Facturae;
use josemmo\Facturae\FacturaeParty;
Expand Down

0 comments on commit f2daacc

Please sign in to comment.