Caricamento automatico
Caricamento di file conformi a PSR-0 utilizzando Composer
Webman segue le specifiche di caricamento automatico PSR-4
. Se il tuo progetto richiede il caricamento di librerie conformi a PSR-0, segui i passaggi seguenti.
- Crea una directory
extend
per archiviare le librerie conformi aPSR-0
. - Modifica
composer.json
, aggiungendo il seguente contenuto sottoautoload
:
"psr-0" : {
"": "extend/"
}
Il risultato finale sarà simile a:
- Esegui
composer dumpautoload
. - Esegui
php start.php restart
per riavviare webman (nota: è necessario riavviare affinché le modifiche abbiano effetto).
Caricamento di determinati file utilizzando Composer
-
Modifica
composer.json
, aggiungendo i file che si desidera caricare sottoautoload.files
:"files": [ "./support/helpers.php", "./app/helpers.php" ]
-
Esegui
composer dumpautoload
. -
Esegui
php start.php restart
per riavviare webman (nota: è necessario riavviare affinché le modifiche abbiano effetto).
Nota
I file configurati inautoload.files
di composer.json vengono caricati prima dell'avvio di webman. I file caricati utilizzandoconfig/autoload.php
del framework vengono invece caricati dopo l'avvio di webman.
Le modifiche apportate ai file caricati tramiteautoload.files
di composer.json richiedono un riavvio per avere effetto, mentre quelle apportate ai file caricati tramiteconfig/autoload.php
del framework supportano il ricaricamento a caldo e avranno effetto con un semplice reload.
Caricamento di determinati file utilizzando il framework
Alcuni file potrebbero non essere conformi alle specifiche SPR e non possono essere caricati automaticamente. In questi casi, è possibile caricare tali file configurando config/autoload.php
, ad esempio:
return [
'files' => [
base_path() . '/app/functions.php',
base_path() . '/support/Request.php',
base_path() . '/support/Response.php',
]
];
Nota
Nella configurazione diautoload.php
vediamo che vengono caricati due file,support/Request.php
esupport/Response.php
, questo perché nella directoryvendor/workerman/webman-framework/src/support/
sono presenti altri due file con lo stesso nome. Grazie aautoload.php
, è possibile dare la precedenza ai file presenti nella directory radice del progetto. Ciò consente di personalizzare il contenuto di questi due file senza dover modificare quelli presenti nella directoryvendor
. Se non è necessario personalizzarli, è possibile ignorare questa configurazione.