Archivo para July, 2011

Jul 10 2011

ZendFramework y PluginLoader

Publicado por octante bajo PHP

PluginLoader sirve para cargar plugins automáticamente, su uso es muy simple.

Para cargar un plugin necesitamos dos cosas, el repositorio donde está guardado (la ruta hasta el fichero) y el nombre del plugin.

Para cargar el/los repositorio/repositorios (podemos cargar más de un respositorio, éstos serán guardados en forma de array) debemos llamar al método “addPrefixPath”, por ejemplo:

$loader = new Zend_Loader_PluginLoader();
$loader->addPrefixPath ('Zend_View_Helper', 'Zend/View/Helper/')
          ->addPrefixPath ('Frontend_View_Helper', 'application/frontend/views/helpers');

Y para cargar los plugins debemos llamar al método “load”, por ejemplo:

$helperClass = $loader->load('HelperName'); // Con lo que se va a llamar a Zend_View_Helper_HelperName o bien Frontend_View_Helper_HelperName

Otra función que nos puede ser de gran utilidad es “isLoaded”, que nos va a contestar si está cargado o no el plugin, por ejemplo:

if ($loader->isLoaded('HelperName')){   //  En el caso de que ya esté cargado el plugin aprovechamos para llamarlo
   $className = $loader->getClassName('HelperName');
   $adapter = user_call_function (array('HelperName', 'getInstance'));  // Ya tenemos acceso al helper
}

Aún no hay respuestas