• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Проблема с интерфейсами

  • Автор темы Velzevul
  • Дата начала
Статус
Закрыто для дальнейших ответов.
V

Velzevul

Есть маленькая проблема. Я не понимаю, почему не работает приведенный код.
В браузер вываливается ошибка : Fatal error: Access type for interface method Say::hi() must be omitted in z:\home\localhost\test\index.php on line 6
Лезем в 6 строку - там объявляется абстрактный метод. Что не так, подскажите?

Код:
<?php



interface Say {
abstract function hi();
}




class User implements Say {

public function hi() {
echo("Hi!!! I'm user!");
}
}

class Runner implements Say {

public function hi() {
echo("Hi!!! I'm runner!");
}

function run() {
echo("бегу");
}

}

$obj = new User();




?>
 
M

MajestiC

Код:
interface Say {
public abstract function hi();
}

Вообще надо было тебе сравнить свое обьявление с примером в мануале PHP.
 
V

Velzevul

2MajestiC: То что ты написал - ничего не дает.
С проблемой справился, в описании интерфейса слово Abstract не нужно. Все заработало как надо.
Это все книжки по 500 рублей идиотские! Купишь такую - а код не работает. Маразм полный.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!