PHP Autocarga con compositor


Ejemplo

Composer genera un archivo vendor/autoload.php .

Simplemente puede incluir este archivo y obtendrá la carga automática de forma gratuita.

require __DIR__ . '/vendor/autoload.php';

Esto hace que trabajar con dependencias de terceros sea muy fácil.


También puede agregar su propio código al autocargador agregando una sección de carga automática a su composer.json .

{
    "autoload": {
        "psr-4": {"YourApplicationNamespace\\": "src/"}
    }
}

En esta sección se definen las asignaciones de carga automática. En este ejemplo, se trata de una asignación PSR-4 de un espacio de nombres a un directorio: el directorio /src reside en la carpeta raíz de su proyecto, en el mismo nivel que el directorio /vendor . Un ejemplo de nombre de archivo sería src/Foo.php contiene una clase YourApplicationNamespace\Foo .

Importante: después de agregar nuevas entradas a la sección de carga automática, debe volver a ejecutar el comando dump-autoload para volver a generar y actualizar el archivo vendor/autoload.php con la nueva información.

Además PSR-4 carga automática de PSR-4 , Composer también admite PSR-0 , classmap y carga automática de files . Vea la referencia de carga automática para más información.


Al incluir el archivo /vendor/autoload.php , se devolverá una instancia del Compositor Autoloader. Puede almacenar el valor de retorno de la llamada de inclusión en una variable y agregar más espacios de nombres. Esto puede ser útil para las clases de carga automática en un conjunto de pruebas, por ejemplo.

$loader = require __DIR__ . '/vendor/autoload.php';
$loader->add('Application\\Test\\', __DIR__);