Да, интерфейсы в PHP применяются как аналог множественному наследованию.
Но интерфейсы же не позволяют реализовывать в своем теле методы? Какое может быть наследование? (Добавление)
Наследуют методы и поля, а интерфейс не позволяет в себе реализовать ни того, ни другого
В PHP это как реализуется? (Добавление)
Я так понимаю, никак, ибо не сталкивался ни разу.
Я писал интерфейсы, понял, что класс должен реализовать все его методы, вплоть до аргументов. Данные интерфейс хранить не может. Что за соглашения? Я вот этого не понимаю. Хочешь сказать, можно наложить условия на аргументы методов так, чтобы php генерировал предупреждение о несоответствии? Или как понимать фразу "соглашения" ?
Ничего странного нет. Тут играет роль кодировка файл. Если файл в формате UTF-8, то там в начале добавляются 3 невидимых для нас символа ( BOM ), которые, по своей сути, являются выводом => header не сработает. Обычный блокнот windows сохраняет файлы в кодировке cp1251, в notepad по разному : можно сделать cp1251, можно utf-8. Видимо у тебя стояла utf-8
Убери echo "привет"; Вообще ничего выводить не должен до переадресации и перед <?php ничего быть не должно. Смысл от этого echo, если пользователя сразу перебросит на другую страницу?