После отладки Cannot redeclare...

Статус
В этой теме нельзя размещать новые ответы.

vanderv

Старатель
Регистрация
30 Май 2009
Сообщения
270
Реакции
12
Zend Studio + denwer...
Значит каогда делаю отладку (на каждой строчке жму Ф5)... идёт выполнение кода... потом бац ошибка:
Cannot redeclare class Varien_Event_Collection
А если просто открыть сайт то всё норм... с чем это может быть связано?
 
Как обычно, в вопросе содержится 80% ответа. Если дело не в сайте, тогда проблема либо с отладчиком, либо с сервером(ПО). Я бы попробовал вместо Денвера погонять на xampp, если там тоже самое, тогда пробовал другой отладчик.
 
Zend Studio + denwer...
Значит каогда делаю отладку (на каждой строчке жму Ф5)... идёт выполнение кода... потом бац ошибка:
Cannot redeclare class Varien_Event_Collection
А если просто открыть сайт то всё норм... с чем это может быть связано?
Такая ситуация возможна в следующих случаях:
1)Имеешь 2 класса с одинаковом именем и пытаешься заинклудить их одновременно (маловероятно, но проверь)
2) Инкллудишь этот класс в несколько файлов, которые в свою очередь инклудятся в главный файл (это наиболее вероятно).
Поэтому попробуй использовать в качестве инклуда require_ince(), либо вынеси инклуд файлов классов в 1 файл, котоый гарантировано будет инклудится 1 раз.
 
...Имеешь 2 класса с одинаковом именем и пытаешься заинклудить их одновременно (маловероятно, но проверь)
У него похоже Magento, если бы там было 2 класса с одинаковом именем, как долго продолжалась бы такая ситуация?
2) Инкллудишь этот класс в несколько файлов, которые в свою очередь инклудятся в главный файл (это наиболее вероятно).
Поэтому попробуй использовать в качестве инклуда require_ince(), либо вынеси инклуд файлов классов в 1 файл, котоый гарантировано будет инклудится 1 раз.
Я бы посоветовал require_once() :) Но не это главное.
А как понять тот факт, что сайт не в режиме отладки работает нормально? Получается, что при работе сервер не замечает, что "этот класс инклудится в несколько файлов", а при отладке видит?

Хотя надо бы еще проверить включен ли вывод ошибок/предупреждений в скрипте. Может режим отладки автоматом включает вывод ошибок, а в самом скрипте вывод сообщений просто подавляется. Посмотри скрипт на предмет строк вроде этой:
PHP:
error_reporting (E_ALL);
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху