Как использовать панель инструментов DebugKit в cakephp 2.1.3 или cakephp 2.0

Я пытался использовать панель инструментов Cakephp Debugkit для cakephp 2.1.3... но она не работает нормально..

Я реализовал отладочный набор на cakephp 1.3, он работает нормально.

я скачал отладчик для cakephp 2.1.3. это я перепроверил..

Как я это реализую??

app/plugin/DebugKit   ///this is my path for debugkit

Я проверил, что мой режим отладки равен 2..

Configure::write('debug', 2);

как я загружаю свой набор для отладки в Appcontroller..'

public $components = array('DebugKit.Toolbar');

Он показывает ошибку

Parse error: syntax error, unexpected T_FUNCTION in /var/www/guest1/cakephp-2.1.3/app/Plugin/debug_kit/Controller/Component/ToolbarComponent.php on line 165

Я загружаю отладочный набор из другого источника, но результат тот же.

Спасибо !

он показывает ошибку в этой функции и строке

public function implementedEvents() {
    $before = function ($name) {
        return function () use ($name) {
            DebugTimer::start($name, __d('debug_kit', $name));
        };
    };
    $after = function ($name) {
        return function () use ($name) {
            DebugTimer::stop($name);
        };
    };

Я загрузил файл в bootstrap.php в конце

CakePlugin::loadAll(); 

Ошибка:-

    Error: DebugKit.ToolbarComponent could not be found.

Error: Create the class ToolbarComponent below in file: /var/www/guest1/cakephp-2.1.3/app/Plugin/DebugKit/Controller/Component/ToolbarComponent.php

person Javascript Coder    schedule 29.05.2012    source источник
comment
не могли бы вы показать нам, как выглядит строка 165 в ToolbarComponent.php?   -  person Andreas Wong    schedule 29.05.2012
comment
@SiGanteng Смотрите, я обновил свою ошибку строкой №   -  person Javascript Coder    schedule 29.05.2012


Ответы (3)


У меня такая же проблема. DebugKit работал на моем локальном сервере, но вылетал с той же ошибкой онлайн. Проблема заключалась в том, что у меня не было подключения к базе данных. После того, как я успешно подключился к базе данных, отладочный набор заработал нормально.

person Mike    schedule 12.11.2013

Вы загрузили последнюю версию подключаемого модуля DebugKit, в котором используются замыкания. Как вы видите, для этого вам нужен PHP не ниже 5.3.

Просто загрузите более раннюю версию DebugKit, совместимую с вашей версией PHP.

person dr Hannibal Lecter    schedule 29.05.2012
comment
Я пробовал это, но... он показывает ошибку, Ошибка: DebugKit.ToolbarComponent не найден. и Ошибка: Создайте класс ToolbarComponent ниже в файле: /var/www/guest1/cakephp-2.1.3/app/Plugin/debug_kit/Controller/Component/ToolbarComponent.php.. - person Javascript Coder; 29.05.2012
comment
@Learner: Имя папки для плагина должно быть DebugKit, а не debug_kit, это также было изменено в пироге 2. - person dr Hannibal Lecter; 29.05.2012
comment
@Learner: Просто чтобы убедиться .. 1) Вы загрузили плагин в бутстрапе? 2) Вы уверены, что файл существует? Что произойдет, если вы попытаетесь открыть путь к файлу в редакторе? 3) Можете ли вы опубликовать новое сообщение об ошибке и местоположение вашего файла? - person dr Hannibal Lecter; 29.05.2012
comment
@Learner: Вы получаете содержимое файла, если набираете cat /var/www/guest1/cakephp-2.1.3/app/Plugin/DebugKit/Controller/Component/ToolbarComponent.php в терминале? Если да, вы можете проверить права доступа к файлам/папкам, возможно, пользователь вашего сервера не может получить доступ к недавно развернутому плагину? Вы получаете что-нибудь в своих журналах php/cakephp/apache? - person dr Hannibal Lecter; 29.05.2012
comment
Я проверил.. что файлы присутствуют.. Я запускаю эту команду в терминале. Я дал на это разрешение 777.. но эта ошибка: --- Ошибка синтаксического анализа: синтаксическая ошибка, неожиданная T_FUNCTION в /var/www/guest1/cakephp- 2.1.3/app/Plugin/DebugKit/Controller/Component/ToolbarComponent.php в строке 165 - person Javascript Coder; 29.05.2012
comment
@Learner: Так это новая ошибка? Вы не скачали старую версию плагина? - person dr Hannibal Lecter; 29.05.2012
comment
Я скачал, для этого он показывает ошибку: DebugKit.ToolbarComponent не может быть найден. - person Javascript Coder; 29.05.2012

У меня такая же проблема. Я предполагаю, что если вы используете Cakphp 2.0 и выше, вы не можете использовать версию Debugkit ниже 2, потому что у нее другое соглашение об именах плагинов. Файлы имеют другую древовидную структуру.

Так что все, что вам нужно сделать, это использовать более раннюю версию и переименовать файлы или обновить PHP или использовать более раннюю версию Cakephp.

person user1145716    schedule 11.09.2012