Новый комментарий

SBTesla 06.10.2018 в 18:36

Класс)) правда не совсем пока все понятно, но думаю к концу курса наконец вьеду

artemjeka 11.10.2018 в 04:54
object(Article)[2]
  private 'title' => string 'Заголовок' (length=18)
  private 'text' => string 'Текст' (length=10)
  private 'author' => 
    object(User)[1]
      private 'name' => string 'Иван' (length=8)

Учитель. Что тут значит [2] и [1]?

ivashkevich 12.10.2018 в 08:45

Это просто номера объектов в кишках PHP. Сначала был создан объект User, потом Article.

artemjeka 12.10.2018 в 15:10

О спасибо.

Bogdan 07.01.2019 в 16:00

больше 2-3 уроков в день лучше не учить, а то что-то сильно голову забивает и в конечном итоге мало что понимаешь))

ivashkevich 07.01.2019 в 16:03

Конечно, пару уроков в день - это нормально. И домашку делать обязательно.

[email protected] 29.04.2020 в 00:04

я бы с радостью проходил больше этих 2-3 уроков в день, но ежедневные обязанности не дают.(((

Bugaga159 02.02.2019 в 15:18

Классное начало ООП, надеюсь дальше будет так же интересно))

ivashkevich 03.02.2019 в 23:55

Дальше будет куда интереснее)

artemship 07.05.2019 в 16:42

Спасибо! Переварить бы теперь полученные знания и научиться их применять)

ivashkevich 10.05.2019 в 13:31

Переварится, не переживай. У тебя отлично получается!

andreskrip 13.01.2020 в 23:15

Для целостности урока смею предложить вариант вариант развития:
для класса Cat объявить наследование от класса User (будто котики эволюционировали и стали полноценными пользователями ПК :) ) и ошибка пропадет сама собой, и код выполнится корректно (естественно тело класса Cat я стёр, чтобы не создавать лишнего свойства name) и получится законченная логически история с начала урока и до конца.

P.S.: просто по вашим урокам я пишу для себя вручную конспект и рискнул закончить его по-своему, не добавляя еще одного класса Admin :)

А вобщем, спасибо большое за урок! И извиняюсь если свой самовар в Тулу везу :)
С большим интересом перехожу дальше

ivashkevich 15.01.2020 в 06:12

Интересный вариант развития событий :D

Dmitry.Dudin 08.04.2020 в 00:51

Ты безумен, но я не мог этого не написать!

<?php

class User
{
    private $name;

    public function __construct(string $name)
    {
        $this->name = $name;
    }

    public function getName(): string
    {
        return $this->name;
    }
}

class Cat extends User
{

}

class Article
{
    private $title;
    private $text;
    private $author;

    public function __construct(string $title, string $text, User $author)
    {
        $this->title = $title;
        $this->text = $text;
        $this->author = $author;
    }

    public function getTitle(): string
    {
        return $this->title;
    }

    public function getText(): string
    {
        return $this->text;
    }

    public function getAuthor(): User
    {
        return $this->author;
    }

}

$author = new User('Dmitry');
$cat = new Cat('Бразик');
$article = new Article('Заголовок', 'Текст', $cat);

echo 'Имя автора: ' . $article->getAuthor()->getName();

?>
studentDev 26.04.2020 в 11:12

Котики эволюционируют!

ivashkevich 26.04.2020 в 14:29

А-то!

[email protected] 29.04.2020 в 00:02

Хотел бы поблагодарить Автора курса за его уроки.
Прошло лишь 3-4 дня, как я начал проходить ваш курс ООП в PHP с целью научиться писать плагины для сервера одной игры, а уже имеются результаты. Раньше я ничего не понимал в коде чужих плагинов и ядре самого сервера, даже проходя уроки на ютубе не понимал, но, дойдя до этого момента, решил проверить свои новоприобретённые знания и умения и зашёл в код ядра сервера. Результат меня поразил, я по большей части понимал код и понимал, что он делает. Конечно, я не всё понимал, всему своё время. Я точно знаю, что после прохождения этого курса буду понимать весь код, ведь в коде затрагивается уже следующая тема.
В общем, я ОЧЕНЬ благодарен автору!!!

ivashkevich 29.04.2020 в 04:49

Пожалуйста)

[email protected] 01.08.2020 в 20:15

Мы создаём объекты, добавляем в них свойства и методы.

А не классы?

ivashkevich 02.08.2020 в 17:42

Тут как посмотреть, свойства и методы классов помечаются ключевым словом static. Здесь же речь идет о свойствах и методах объектов. Да, описываем мы их конечно в классах, но принадлежат они объектам этих классов, в отличие от статических свойств и методов, принадлежащих классам.

Ysup 01.09.2020 в 00:26

Автору курсов, Артёму Ивашкевичу огромное спасибо.
Теперь просьба.
Сделайте так, чтобы была возможность менять тему страницы со светлой на тёмную, потому что при ярком мониторе глаза сильно устают.
Думаю что, многие поддержат такую идею.
Спасибо.

ivashkevich 03.09.2020 в 17:20

Хорошо, возьму на заметку, спасибо за предложение)

[email protected] 12.11.2020 в 19:39

От себя добавлю: тайп-хинтинг(указание типов аргументов), как и типы возвращаемых значений - работают только начиная с php7.0. Чтобы быстрей переключаться с версий PHP и глянуть работу интерпретатора, можно это сделать через настройки phpStorm, не меняя ничего в настройках OpenServer и не перезагружая его.

V.H 04.02.2022 в 08:26

Если мы в конструкторе статьи разрешим в качестве автора передавать только объекты класса Admin, то если туда передадим объект класса User, то скрипт упадёт с ошибкой, потому что не всякий User является Admin-ом
Я не совсем понял эту мысль я проверил но никакую ошибку не выдала система..можете подкреплять вашу мысль каким то примером ?

ivashkevich 19.02.2022 в 19:11

Код в студию)

kriodezz 07.04.2022 в 14:13

Имеется ввиду если class Admin extends User а в конструкторе Артикла прописать
public function __construct(string $title, string $text, Admin $author)
то
$author = new User('Вася');
$art = new Article('Заголовок', 'Текст', $author); - выдаст ошибку. И это действительно так.

dirty-monk 07.02.2022 в 18:46

Большое спасибо за очередной качественный урок! Всё еще учусь, и всё еще радуюсь подаче материала. С каждым уроком становится всё интереснее. Надеюсь, что уже скоро буду работать программистом =)

ivashkevich 19.02.2022 в 19:05

Так держать!

Логические задачи с собеседований