Autoloading
Utilizzare composer per caricare file conformi a PSR-0
Webman segue lo standard di autoloading PSR-4. Se la tua attività richiede di caricare librerie di codice conformi a PSR-0, segui le istruzioni seguenti.
- Crea una directory
extendper memorizzare le librerie di codice conformi aPSR-0 - Modifica
composer.jsonaggiungendo il seguente contenuto sottoautoload
"psr-0" : {
"": "extend/"
}
Il risultato finale sarà simile a

- Esegui
composer dumpautoload - Esegui
php start.php restartper riavviare webman (nota: è necessario riavviare affinché le modifiche abbiano effetto)
Utilizzare composer per caricare alcuni file
-
Modifica
composer.json, aggiungendo i file da caricare sottoautoload.files"files": [ "./support/helpers.php", "./app/helpers.php" ] -
Esegui
composer dumpautoload -
Esegui
php start.php restartper riavviare webman (nota: è necessario riavviare affinché le modifiche abbiano effetto)
Suggerimento
I file configurati inautoload.filesnelcomposer.jsonverranno caricati prima dell'avvio di webman. I file caricati tramite il frameworkconfig/autoload.phpverranno invece caricati dopo l'avvio di webman.
I file caricati daautoload.filesincomposer.jsondevono essere riavviati per avere effetto dopo qualsiasi modifica, il reload non avrà effetto. I file caricati tramite il frameworkconfig/autoload.phpsupportano il caricamento dinamico e possono essere aggiornati semplicemente con un reload dopo le modifiche.
Utilizzare il framework per caricare alcuni file
Alcuni file potrebbero non conformarsi agli standard SPR e non possono essere caricati automaticamente. Possiamo caricare questi file configurando config/autoload.php, ad esempio:
return [
'files' => [
base_path() . '/app/functions.php',
base_path() . '/support/Request.php',
base_path() . '/support/Response.php',
]
];
Suggerimento
Abbiamo visto che inautoload.phpsono stati impostati per caricare i filesupport/Request.phpesupport/Response.php. Questo perché nella directoryvendor/workerman/webman-framework/src/support/ci sono anche due file identici. Utilizzandoautoload.phpcaricheremo prioritariamente i filesupport/Request.phpesupport/Response.phpdalla directory principale del progetto, consentendoci di personalizzare il contenuto di questi file senza modificare quelli presenti invendor. Se non hai bisogno di personalizzarli, puoi ignorare queste due configurazioni.