препод дал тему на курсач написать интерфес. и дал структуру БД в erwin'е PHP и MySQL немного знаю. Хотелось бы узнать что такое интерфесы для чего нужны, ПРИМЕР бы посмотреть что именно хотел препод =)? Могу выложить бд в рвине если требуется
Судя по лексическому разбору текста и стилистическому анализу, возраст пишущего не совпадает с аватаркой. Соответственно, или человек довольно инфантилен, или это — фэйк.
вам делать нечего?Флудите и пытаетесь умничать. просто там борода у меня не сбрита и очки для прикола одел. хотел щас загрузить новую аватару-не выходит-сбрасывает на ошибку браузер. так что извиняйте.
я просто не догоняю зачем вот например тут используется интерфес PHP: <?php interface water { public function makeItWet(); } /** * abstract class implements water but defines makeItWet * in the most general way to allow child class to * provide specificity **/ abstract class weather implements water { private $cloudy; public function makeItWet(){} abstract public function start(); abstract public function getCloudy(); abstract public function setCloudy(); } class rain extends weather { private $cloudy; public function start() { return "Here's some weather. "; } public function makeItWet() { return 'it is raining cats and dogs today.'; } public function getCloudy() { return $this->cloudy; } public function setCloudy($bln=false) { $this->cloudy = $bln; } } $a = new rain(); echo $a->start(); $a->setCloudy(true); if ($a->getCloudy()) { echo 'It is a cloudy day and '; } echo $a->makeItWet(); ?> короче чето пока никак не догоняю :roll: Просто чтоли показывается как идет использование интерфеса из класса?
Типа того. Если в классе не будет метода, который указан в интерфейсе, php выдаст ошибку. Т.с. напомнит программисту, какой метод он забыл описать и как он должен называться. =)
John What Интерфейс задаёт регламент. Методы, описанные в интерфейсе, должны быть обязательно реализованы классом. Возмем большой проект на С#: У нас есть несколько компонентных классов: Button, Editbox, Checkbox. Все они реализуют единый интерфейс. Для класса Form обязательна реализация метода Dispose. IData описывает обязательную реализацию Close для файла. По интерфейсу мы видим, на какой основе построен класс. Например: public partial class : IData, IComponent, IFree Мы знаем, какие методы обязан будет реализовать класс.
капец.это же получается почти бесполезная штука. расковырял DLE ненашел применения там =). Хочу найти какойнить код, чего нибудь, где эти интерфесы используются (в PHP) , а не просто примеры где показывается как можно работать с интерфесами p.s. спасибо за разъяснения :wink:
John What Вот почитай https://php.ru/manual/reserved.interfaces.html Это встроенные интерфейсы PHP. Классы которые их реализуют, тоесть реализуют методы задекларированные этими интерфейсами могут использоваться "неформально" относительно обычных классов. Тоже самое и с интерфейсами определяемыми пользователем. Это не бесполезная штука, а очень мощный механизм, который является частью взаимодействия классов, рефакторинга и всей прочей крутой лабуды...