Не удается переопределить класс Zend_Loader_Autoloader - PullRequest
3 голосов
/ 29 июля 2010

Я использую Zend Debugger для отладки моего php-приложения, созданного на основе Zend Framework.В настоящее время я использую версию 1.10.6.При отладке моего приложения я получаю эту ошибку:

Compile Error: /var/www/Zend/ZendFramework-1.10.6/library/Zend/Loader/Autoloader.php line 36 - Cannot redeclare class Zend_Loader_Autoloader

Это просто ошибка в Zend Framework или это связано с неверной конфигурацией в моем application.php?

$paths = array(

    realpath(dirname(__FILE__).'/../library'),
    '.',
);
*/


defined('APPLICATION_PATH') 
    or define('APPLICATION_PATH', realpath(dirname(__FILE__).'/../application'));
defined('APPLICATION_ENV')
    or define('APPLICATION_ENV', 'development');

set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH.'/../library'),
)));    


//require_once('Zend/Loader/Autoloader.php');   
require_once('Zend/Application.php');

$application = new Zend_Application(
    APPLICATION_ENV,
    APPLICATION_PATH.'/configs/events.ini'  
);

$application->bootstrap()->run();

Ответы [ 3 ]

3 голосов
/ 15 апреля 2012

выключите Zend Optimizer, если вы используете Zend Server

2 голосов
/ 29 июля 2010

Возможно, вы включаете () - или требуете () - файла где-то, не зная об этом.Попробуйте вставить этот код вверху Autoloader.php:

if (!isset($GLOBALS['zend_autoloader_loaded'])) {
    $GLOBALS['zend_autoloader_loaded'] = true;
}
else {
    print_r(debug_backtrace());
    die;
}

Трассировка покажет, где Autoloader.php требуется во второй раз.

1 голос
/ 11 августа 2011

Возможно, вы используете Zend Server - который, я думаю, включает это по умолчанию.

...