Carga automática
Cargar archivos que siguen la especificación PSR-0 utilizando composer
Webman sigue la especificación de carga automática PSR-4
. Si tu negocio necesita cargar bibliotecas de código que siguen la especificación PSR-0
, consulta las siguientes operaciones.
- Crea un nuevo directorio
extend
para almacenar bibliotecas de código que sigan la especificaciónPSR-0
. - Edita
composer.json
y agrega el siguiente contenido enautoload
"psr-0" : {
"": "extend/"
}
El resultado final es similar a
- Ejecuta
composer dumpautoload
. - Ejecuta
php start.php restart
para reiniciar webman (recuerda, debes reiniciar para que surta efecto).
Cargar ciertos archivos utilizando composer
-
Edita
composer.json
y agrega los archivos que deseas cargar enautoload.files
"files": [ "./support/helpers.php", "./app/helpers.php" ]
-
Ejecuta
composer dumpautoload
. -
Ejecuta
php start.php restart
para reiniciar webman (recuerda, debes reiniciar para que surta efecto).
Advertencia
Los archivos configurados enautoload.files
dentro de composer.json se cargarán antes de que webman se inicie. En cambio, los archivos cargados a través del marcoconfig/autoload.php
se cargarán después de que webman haya comenzado.
Los archivos cargados enautoload.files
de composer.json deben reiniciarse para que surta efecto tras cualquier cambio;reload
no tendrá efecto. En cambio, los archivos cargados a través deconfig/autoload.php
admiten la recarga, y cualquier cambio surtirá efecto después dereload
.
Cargar ciertos archivos utilizando el marco
Puede que algunos archivos no cumplan con la especificación SPR y no se puedan cargar automáticamente; podemos configurarlos en config/autoload.php
para cargarlos, por ejemplo:
return [
'files' => [
base_path() . '/app/functions.php',
base_path() . '/support/Request.php',
base_path() . '/support/Response.php',
]
];
Advertencia
Enautoload.php
hemos configurado la carga de los archivossupport/Request.php
ysupport/Response.php
; esto es porque también hay dos archivos idénticos envendor/workerman/webman-framework/src/support/
. A través deautoload.php
damos prioridad a cargarsupport/Request.php
ysupport/Response.php
desde el directorio raíz del proyecto, permitiéndonos personalizar el contenido de estos dos archivos sin modificar los archivos dentro devendor
. Si no necesitas personalizarlos, puedes ignorar estas dos configuraciones.