Сообщения об ошибках Zend Autoloader - PullRequest
0 голосов
/ 26 сентября 2011

Я использую этот автозагрузчик для загрузки нескольких внешних библиотек в мое приложение Zend.Классы загружены правильно и работает нормально.Но у меня, кажется, есть проблема при загрузке классов с использованием нескольких таких автозагрузчиков.Проблема состоит в том, что после нахождения класса в одном из автозагрузчиков, zend продолжает поиск в других загрузчиках, следовательно, выдает следующее сообщение об ошибке из автозагрузчиков, за исключением того, в котором они определены.

Примечание: неопределенный индекс: myClassFile в /var/www/myApp/application/loaders/Autoloader/PhpThumb.php в строке 21

, где myClassFile определен в другом загрузчике и загружается / работает нормально, но все равно продолжает поискво втором автозагрузчике, где он не определен.

Есть идеи, что мне не хватает?


Обновление : мой файл начальной загрузки:

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    protected function _initAutoload()
    {
        $autoLoader=Zend_Loader_Autoloader::getInstance();
        $resourceLoader=new Zend_Loader_Autoloader_Resource(array(
            'basePath'=>APPLICATION_PATH,
            'namespace'=>'',
            'resourceTypes'=>array(
                'form'=>array(
                    'path'=>'forms/',
                    'namespace'=>'Form_'
                ),
                'models'=>array(
                    'path'=>'models/',
                    'namespace'=>'Model_'
                ),                
            )

            ));

        //return $autoLoader;

        $resourceLoader->addResourceType('loader', 'loaders/', 'My_Loader_');
        $autoLoader->pushAutoloader($resourceLoader);

        //load PhpThumb class
        $autoLoader->pushAutoloader(new My_Loader_Autoloader_PhpThumb());

        //load Factory Class
        $autoLoader->pushAutoloader(new My_Loader_Autoloader_Factory());
    }


}


?>

и позже, чтобы использовать его:

$factory=new Factory();

, который, кажется, работает нормально, но выдает ошибку.

1 Ответ

0 голосов
/ 26 сентября 2011

Возможно, я не смогу правильно понять вашу проблему. Но если вы пытаетесь загрузить внешнюю библиотеку, такую ​​как PhpThumb, то вы делаете это неправильно. Поскольку большая загрузка будет делать приложение медленнее. В такой библиотеке, как PhpThumb, вряд ли один php файл просто использует вместо этого require_once. И поставить этот путь APPLICATION_PATH/library/PhpThumb.php

...