Tengo una biblioteca de clases en el definido aquí .../projectname/biblioteca/Me/Myclass.php define como sigue:Zend Framework: carga automática una biblioteca de clases
<?php
class Me_Myclass{
}
?>
Tengo el siguiente bootstrap:
<?php
/**
* Application bootstrap
*
* @uses Zend_Application_Bootstrap_Bootstrap
*/
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
/**
* Bootstrap autoloader for application resources
*
* @return Zend_Application_Module_Autoloader
*/
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Default',
'basePath' => dirname(__FILE__),
));
$autoloader->registerNamespace('Me_');
return $autoloader;
}
/**
* Bootstrap the view doctype
*
* @return void
*/
protected function _initDoctype()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$view->doctype('XHTML1_STRICT');
}
/**
* Bootstrap registry and store configuration information
*
* @return void
*/
protected function _initRegistry()
{
$config = new Zend_Config_Ini(APPLICATION_PATH .
'/configs/application.ini', APPLICATION_ENV,
array('allowModifications'=>true));
Zend_Registry::set('configuration', $config);
}
}
En mi controlador de trato de crear una instancia de la clase como esta:
<?php
class SomeController extends Zend_Controller_Action
{
public function indexAction()
{
$classMaker=new Me_Myclass();
}
}
?>
Cuando navego directamente a http:/somethi ng.com/projectname/some?id=1 Recibo el siguiente error:
Error fatal: no se encuentra la clase 'Me_Myclass' en /home/myuser/work/nombredeproyectos/application/controllers/SomeController.php en la línea x
¿Alguna idea?
Miscelánea potencialmente pertinente:
El cargador automático parece funcionar cuando se les extiendo modelos con las clases he definido en otras carpetas bajo application/biblioteca.
Alguien sugirió cambiar el 'Predeterminado', que intenté pero no pareció solucionar el problema y tuvo el impacto negativo adicional de la función de corte de los modelos que usan este espacio de nombres.
Hola, gracias por su respuesta, me trataron esto y recibimos un error a continuación. ¿Qué indica eso? Error fatal: excepción no detectada 'Zend_Loader_Exception' con el mensaje 'Método' registerNamespace 'no es compatible' en /home/myuser/work/myproject/library/Zend/Loader/Autoloader/Resource.php:128 Stack trace: http: // pastie.org/799074 – user250120
Actualice su respuesta para mostrar los cambios en el código que ha realizado. – smack0007