Zend Framework 1.9: Come utilizzare Autoloading senza MVC
-
13-09-2019 - |
Domanda
Come faccio classi del framework Zend automatico del carico, quando non sto usando il framework MVC?
Soluzione
La cosa bella di Zend Framework è che è estremamente modulare, è possibile utilizzare praticamente qualsiasi pezzo di esso si vuole senza adottare il tutto.
Per esempio, possiamo usare Zend_Loader_Autoloader
per impostare classe auto-caricamento senza dover utilizzare Zend_Application
Per prima cosa assicurarsi che la libreria Zend è nel tuo percorso di inclusione:
set_include_path('/path/to/zend/' . PATH_SEPARATOR . get_include_path());
Poi richiedere la classe Autoloader:
require_once 'Zend/Loader/Autoloader.php';
Poi abbiamo istituito il caricatore automatico:
// instantiate the loader
$loader = Zend_Loader_Autoloader::getInstance();
// specify class namespaces you want to be auto-loaded.
// 'Zend_' and 'ZendX_' are included by default
$loader->registerNamespace('My_App_');
// optional argument if you want the auto-loader to load ALL namespaces
$loader->setFallbackAutoloader(true);
Una volta che l'auto-loader è configurato (preferibilmente in un bootstrap o qualcosa del genere), è possibile chiamare classi del framework Zend (o classi del proprio app) senza dover richiedere singolarmente:
$foo = new Zend_Library_Class();
$bar = new My_App_Class();
Altri suggerimenti