Zend_Loader::registerAutoload() в Zend Framework 1.8


    До того как я попробовал заменить предыдущую версию ZF на 1.8 в своих приложениях, я прочел у акрабата, что использовать автозагрузку как раньше (до версии 1.8) - не рекомендуется, а со 2-ой версии и вовсе это не будет работать. Как мы делали раньше в нашем bootstrap'e:


require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();

    Теперь нужно заменить это на:


require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('App_');

    Здесь App_ это имя каталога, который на ряду с Zend включен в include path для того чтобы это работало соответственно, необходимо следовать зендовским рекомендациям по именованию.
    Вобщем не удивляйтесь, когда когда увидите:

Notice: Zend_Loader::Zend_Loader::registerAutoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /PATH/TO/Zend/Loader.php on line 207
Notice: Zend_Loader::Zend_Loader::autoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /PATH/TO/Zend/Loader.php on line 186
Notice: Zend_Loader::Zend_Loader::autoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /PATH/TO/Zend/Loader.php on line 186

    просто включите автозагрузку через другой класс.



Добавлена: 04-05-2009 | Изменена: 04-05-2009 | Пользователем: djaarf | Просмотров: 3318


Оставить комментарий



Капча *

Captcha

Комментарий будет опубликован после проверки модератором

Для подсветки синтаксиса исходный код следует обрамлять следующими тэгами
<pre><code class="синтаксис" >код</code></pre>
Подерживаются следующие: cpp php javascript sql html-xml css ini