Задать вопрос

Почему добавления пространства имен «провоцирует» warning?

Всем привет.
Вот рабочий код (для проверки - копипаст с Хабра):
class Foo {
    public static function bar() {
        return 42;
    }
}

$x = 'Foo::bar';

assert(
    true === is_callable($x)
);

Всё работает, но стоит "правильно" добавить пространство имен в начало файла:
<?php
namespace myproject;

- и всё, генерируется warning:
Warning: assert(): Assertion failed in C:\OpenServer\domains\test2.loc\php.php on line 14

Естественно, проверил, что находится в 14 строке. Там находится закрывающая скобка и тчк-с-зпт.
Благодарю за объяснение.
  • Вопрос задан
  • 144 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
потому что нет такого класса больше. Его полное имя - "myproject\Foo"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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