Задать вопрос
pos_ilya
@pos_ilya
Cringe person

Почему выскакивает ошибка Cannot redeclare?

Fatal error: Cannot redeclare is_stop() (previously declared in /var/www/html/navprog/sender/Segment.php:16) in /var/www/html/navprog/sender/Segment.php on line 16


Я не понимаю, в чём проблема. Ведь функция определена только в 1 файле и только в 1 месте, а файл подключается только 1 раз и то с помощьюrequire_once().

63e9b5b2efb50107364630.png
  • Вопрос задан
  • 86 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
pos_ilya
@pos_ilya Автор вопроса
Cringe person
Я так и не понял, в каком месте оно повторно объявляется, но помогло оборачивание в if (спасибо Dmitry Bay за функцию function_exists()).
if (!function_exists('is_stop')) {
    function is_stop($point) {
        if ($point->type == 221 || $point->type == 224 || $point->type == 231 || $point->type == 234 || $point->type == 241) {
            return true;
        }
        return false;
    }
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Значит в каком-то месте этот Segment.php инклудится ещё раз, но уже через require() или include().
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы