Урок 1. Курс по ООП PHP. Класс и объект


Содержание материала:

Урок 1. Курс по ООП PHP. Класс и объект

Освойте бесплатно наиболее простой, быстрый и гибкий способ создавать адаптивные веб-сайты.

Дизайн лендинга

Создавайте дизайн любых сайтов — для себя и на заказ!

Популярное

  • Главная
  • ->
  • Материалы
  • ->
  • Объектно-ориентированный подход в PHP для начинающих. Часть 1

Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Бесплатный Курс «Практика HTML5 и CSS3»

Освойте бесплатно пошаговый видеокурс

по основам адаптивной верстки

на HTML5 и CSS3 с полного нуля.

Фреймворк Bootstrap: быстрая адаптивная вёрстка

Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.

Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.

Верстайте на заказ и получайте деньги.

Что нужно знать для создания PHP-сайтов?

Ответ здесь. Только самое важное и полезное для начинающего веб-разработчика.

Узнайте, как создавать качественные сайты на PHP всего за 2 часа и 27 минут!

Создайте свой сайт за 3 часа и 30 минут.

После просмотра данного видеокурса у Вас на компьютере будет готовый к использованию сайт, который Вы сделали сами.

Вам останется лишь наполнить его нужной информацией и изменить дизайн (по желанию).

Изучите основы HTML и CSS менее чем за 4 часа.

После просмотра данного видеокурса Вы перестанете с ужасом смотреть на HTML-код и будете понимать, как он работает.

Вы сможете создать свои первые HTML-страницы и придать им нужный вид с помощью CSS.

Бесплатный курс «Сайт на WordPress»

Хотите освоить CMS WordPress?

Получите уроки по дизайну и верстке сайта на WordPress.

Научитесь работать с темами и нарезать макет.

Бесплатный видеокурс по рисованию дизайна сайта, его верстке и установке на CMS WordPress!

Хотите изучить JavaScript, но не знаете, как подступиться?

После прохождения видеокурса Вы освоите базовые моменты работы с JavaScript.

Развеются мифы о сложности работы с этим языком, и Вы будете готовы изучать JavaScript на более серьезном уровне.

*Наведите курсор мыши для приостановки прокрутки.

Объектно-ориентированный подход в PHP для начинающих. Часть 1

Многим PHP-программистам объектно-ориентированное программирование кажется пугающим, изобилующим запутанным синтаксисом и другими сложностями.

Данный материал поможет Вам понять общие концепции, стоящие за объектно-ориентированным программированием и стиль написания кода, при котором сходные действия группируются в классы.

Именно это позволяет писать более компактный и эффективный код.

Понимание Объектно-Ориентированного Программирования (ООП)

ООП — это стиль написания кода, который позволяет разработчикам группировать сходные задачи в классы. Это помогает коду соответствовать так называемому принципу DRY (Don’t Repeat Yourself — Не повторяйте сами себя) и быть легким с точки зрения модификации и доработки.

Если говорить кратко, то данный принцип означает, что каждая частица знания должна иметь единственное и однозначное представление в системе. Когда такой принцип реализуется грамотно, то модификация какой-либо части системы не приводит к тому, что приходится переделывать чуть-ли не все остальное.

Одно из главных преимуществ применения принципа DRY состоит в том, что при изменении какой-либо информации в Вашей системе, как правило, приходится править код только в каком-то одном месте.

Один из кошмаров веб-разработчиков — это поддержка кода, в котором происходит многократное объявление информации, что приводит к тому, что любое изменение в программе становится огромной головной болью из-за необходимости поиска дублирующихся данных и функционала.

ООП страшит многих разработчиков из-за того, что вводит новый синтаксис и, на первый взгляд, кажется гораздо более сложным делом, нежели простое процедурное кодирование. Однако, после более плотного знакомства с ним, многие соглашаются, что ООП не так сложно, как кажется, и является более продуктивным подходом к написанию кода.

Понимание Объектов и Классов

Прежде чем переходить непосредственно к ООП, необходимо иметь базовое понимание того, что такое объект, и что такое класс. Сейчас мы рассмотрим, как создаются классы, их возможности и некоторые из способов их использования.

Понимание отличия объектов от классов

Действительно, существует определенная путаница. Многие опытные разработчики используют эти два слова как взаимозаменяемые понятия, что зачастую очень путает новичков и портит им немало нервных клеток.

Класс, к примеру, подобен плану дома. Он определяет конфигурацию и устройство дома на бумаге. На плане могут быть представлены все детали внутреннего устройства дома, хотя в действительности самого этого дома еще не существует.

Объект же — это уже построенный по данному плану дом. Данные, хранящиеся в объекте, можно сравнить с бетоном, арматурой и деревом, из которых возводится дом. Не будучи собранными в соответствии с планом, все эти материалы являются просто кучей вещей. Однако, когда они собираются все вместе по определенным правилам, то организуются в полезную вещь — дом.

Классы формируют структуру данных и действий и используют эту информацию для создания объектов.

Понятно, что используя один и тот же план дома, его можно построить сколько угодно раз на разных улицах и в любых точках мира. Точно так же и на основании одного класса можно создать несколько объектов, которые совершенно не зависят друг от друга.

Структура Класса

Синтаксис создания класса вполне самоочевиден: объявляем класс, используя ключевое слово, а за ним следует само название класса с фигурными скобками:

После создания класса можно создать новый объект, используя ключевое слово new, и сохранить его в переменную:

Для того, чтобы увидеть содержимое объекта, используйте функцию var_dump():

Создайте новый php-файл с произвольным именем и посмотрите, как это работает, воспользовавшись следующим блоком кода:

Обратитесь к созданному Вами файлу, и на экране должна появиться следующая строка:

Отлично. Ваш первый простейший скрипт а-ля «Hello, World» готов. Но пользы от него совершенно никакой, поэтому двигаемся дальше.

Объявление Свойств Класса

Для добавления в класс информации используются свойства (по сути это переменные, относящиеся к данному конкретному классу). Они работают точно так же, как и обычные переменные, за исключением того, что они имеют привязку к объекту и, следовательно, доступ к ним можно получить только через объект.

Для того, чтобы добавить свойство в класс MyClass, внесите следующий код в скрипт:

Ключевое слово public определяет так называемую «область видимости» свойства. Об этом мы поговорим позже в процессе изучение основ объектно-ориентированного программирования. Далее свойству дается имя, при этом используется стандартный синтаксис PHP и ему (свойству) присваивается значение (надо заметить, что свойствам в классе не обязательно иметь начальное значение).

Для того, чтобы получить значение свойства и вывести его на экран, нужно указать объект, к которому оно относится, и само свойство:

Поскольку одновременно могут существовать несколько экземпляров класса (как, например, несколько домов, построенных по одному плану), то нужно явно указывать, с каким объектом мы работаем, иначе скрипт не сможет определить, свойство какого объекта нужно получить.

Знак «->» является специальной конструкцией, которая позволяет получить доступ к свойствам или методам данного объекта.

Измените скрипт, чтобы получить значение свойства, таким образом:

Обновите страницу и Вы получите следующий результат:

Объявление Методов Класса

Методы — это функции, относящиеся к конкретному классу. Отдельные действия, которые способен будет производить объект, внутри класса называются методами.

К примеру, для создания методов, которые будут задавать и получать значение свойства $prop1, нужно изменить код таким образом:

Заметьте: ООП позволяет объектам ссылаться на самих себя, используя конструкцию $this. Когда Вы работаете с методом, используйте $this таким же образом, как когда Вы используете имя объекта за пределами класса.

Для использования методов, просто вызывайте их как обычные функции, указывая сперва, к какому объекту они относятся.

Получим значение свойства с помощью метода getProperty(), затем изменим его с помощью метода setProperty() и снова получим значение уже измененного свойства:

Обновите страницу в браузере и Вы увидите две строки:

«Мощь ООП становится очевидной при использовании нескольких экземпляров одного и того же класса.»

Обновите страницу и Вы увидите следующий результат:

Как Вы можете видеть, ООП сохраняет объекты как отдельные элементы, что позволяет легко разделять различные части кода на мелкие «связки».

По материалам net.tutsplus.com
Перевод — Дмитрий Науменко.

P.S. Хотите двигаться дальше в освоении PHP и ООП? Обратите внимание на премиум-уроки по различным аспектам сайтостроения, включая программирование на PHP, а также на бесплатный курс по созданию своей CMS-системы на PHP с нуля с использованием ООП:

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!

Задачи на ООП в PHP. Часть 1

Учебник PHP

Практика

Важное

Регулярки

  • Урок №
    Введение, задач нет
  • Урок №
    Работа с регулярными
    выражениями в PHP. Глава 1.
  • Урок №
    Работа с регулярными
    выражениями в PHP. Глава 2.
  • Урок №
    Работа с регулярными
    выражениями в PHP. Глава 3.
  • Урок №
    Работа с регулярными
    выражениями в PHP. Глава 4.

Работа с htaccess

Файлы, папки

Сессии и куки

Работа с БД

  • Урок №
    Введение, задач нет
  • Урок №
    Команды SELECT,
    INSERT, DELETE, UPDATE
  • Урок №
    Команды ORDER BY,
    LIMIT, COUNT, LIKE в SQL

Практика по работе с БД в PHP

Перед чтением см. новые уроки раздела «Важное», которые появились выше.

Практика

Движок PHP

Продвинутые БД

Аутентификация

Практика

Введение в ООП

  • Урок №
    новая вкладка с new.code.mu
    Введение
  • Урок №
    новая вкладка с new.code.mu
    Свойства
  • Урок №
    новая вкладка с new.code.mu
    Методы
  • Урок №
    новая вкладка с new.code.mu
    Свойства и $this
  • Урок №
    новая вкладка с new.code.mu
    Методы и $this
  • Урок №
    новая вкладка с new.code.mu
    public private
  • Урок №
    новая вкладка с new.code.mu
    Конструктор
  • Урок №
    новая вкладка с new.code.mu
    Геттеры сеттеры
  • Урок №
    новая вкладка с new.code.mu
    Свойства только для чтения
  • Урок №
    новая вкладка с new.code.mu
    Один класс — один файл
  • Урок №
    новая вкладка с new.code.mu
    Объекты в массиве
  • Урок №
    новая вкладка с new.code.mu
    Начальные значения свойств в конструкторе
  • Урок №
    новая вкладка с new.code.mu
    Начальные значения свойств при объявлении
  • Урок №
    новая вкладка с new.code.mu
    Свойство из переменной
  • Урок №
    новая вкладка с new.code.mu
    Метод из переменной
  • Урок №
    новая вкладка с new.code.mu
    Метод сразу после создания
  • Урок №
    новая вкладка с new.code.mu
    Цепочки методов в классе
  • Урок №
    новая вкладка с new.code.mu
    Класс как набор методов
  • Урок №
    новая вкладка с new.code.mu
    Наследование классов
  • Урок №
    новая вкладка с new.code.mu
    Модификатор protected
  • Урок №
    новая вкладка с new.code.mu
    Перезапись методов родителя
  • Урок №
    новая вкладка с new.code.mu
    Перезапись конструктора родителя
  • Урок №
    новая вкладка с new.code.mu
    Передача по ссылке
    новая вкладка с new.code.mu
    . текст, код Клонирование объектов
  • Урок №
    новая вкладка с new.code.mu
    Использование объектов в другом классе
  • Урок №
    новая вкладка с new.code.mu
    Передача объектов параметрами
  • Урок №
    новая вкладка с new.code.mu
    Сравнение объектов
  • Урок №
    новая вкладка с new.code.mu
    Оператор instanceof
  • Урок №
    новая вкладка с new.code.mu
    Контроль типов
  • Урок №
    новая вкладка с new.code.mu
    Статические методы
  • Урок №
    новая вкладка с new.code.mu
    Статические свойства
  • Урок №
    новая вкладка с new.code.mu
    Объект со статическими свойствами и методами
  • Урок №
    новая вкладка с new.code.mu
    Константы класса
    новая вкладка с new.code.mu
    . текст, код Наследование и private
  • Урок №
    новая вкладка с new.code.mu
    . текст, код final
    новая вкладка с new.code.mu
    . в стек это Анонимные классы
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Полиморфизм
Топ-пост этого месяца:  Как присваивать определённую метку в метаполе (произвольное поле)

Абстрактные классы и интерфейсы

Трейты

ООП Магия

Практика

Практика: классы как набор методов

  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс ArrayConvertor
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс TagHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс FormHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс TableHelper
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс SessionShell
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс CookieShell
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс FileManipulator
  • Урок №
    новая вкладка с new.code.mu
    . текст, код Практика: класс databaseShell TODO cart корзина flash шаблонизатор роутер контроллер кеш логи фалидатор

Продолжение еще следует

  • .
    по ООП еще много уроков будет, дописываю

Перед решением задач изучите теорию к данному уроку.

Задачи для решения

Работа с классами и объектами

Сделайте класс Worker, в котором будут следующие public поля — name (имя), age (возраст), salary (зарплата).

Создайте объект этого класса, затем установите поля в следующие значения (не в __construct, а для созданного объекта) — имя ‘Иван’, возраст 25, зарплата 1000. Создайте второй объект этого класса, установите поля в следующие значения — имя ‘Вася’, возраст 26, зарплата 2000.

Выведите на экран сумму зарплат Ивана и Васи. Выведите на экран сумму возрастов Ивана и Васи.

Сделайте класс Worker, в котором будут следующие private поля — name (имя), age (возраст), salary (зарплата) и следующие public методы setName, getName, setAge, getAge, setSalary, getSalary.

Создайте 2 объекта этого класса: ‘Иван’, возраст 25, зарплата 1000 и ‘Вася’, возраст 26, зарплата 2000.

Выведите на экран сумму зарплат Ивана и Васи. Выведите на экран сумму возрастов Ивана и Васи.

Дополните класс Worker из предыдущей задачи private методом checkAge, который будет проверять возраст на корректность (от 1 до 100 лет). Этот метод должен использовать метод setAge перед установкой нового возраста (если возраст не корректный — он не должен меняться).

На __construct

Сделайте класс Worker, в котором будут следующие private поля — name (имя), salary (зарплата). Сделайте так, чтобы эти свойства заполнялись в методе __construct при создании объекта (вот так: new Worker(имя, возраст) ). Сделайте также public методы getName, getSalary.

Создайте объект этого класса ‘Дима’, возраст 25, зарплата 1000. Выведите на экран произведение его возраста и зарплаты.

Наследование

Сделайте класс User, в котором будут следующие protected поля — name (имя), age (возраст), public методы setName, getName, setAge, getAge.

Сделайте класс Worker, который наследует от класса User и вносит дополнительное private поле salary (зарплата), а также методы public getSalary и setSalary.

Создайте объект этого класса ‘Иван’, возраст 25, зарплата 1000. Создайте второй объект этого класса ‘Вася’, возраст 26, зарплата 2000. Найдите сумму зарплата Ивана и Васи.

Сделайте класс Student, который наследует от класса User и вносит дополнительные private поля стипендия, курс, а также геттеры и сеттеры для них.

Сделайте класс Driver (Водитель), который будет наследоваться от класса Worker из предыдущей задачи. Этот метод должен вносить следующие private поля: водительский стаж, категория вождения (A, B, C).

Практика

Создайте класс Form — оболочку для создания форм. Он должен иметь методы input, submit, password, textarea, open, close. Каждый метод принимает массив атрибутов.

Передаваемые атрибуты могут быть любыми:

Для решения задачи сделайте private метод, который параметром будет принимать массив, например, [‘type’=>’text’, ‘value’=>’. ‘] и делать из него строку с атрибутами, в нашем случае type=»text» value=». «.

Пример создания формы с помощью нашего класса:

В результате получится следующая форма:

Создайте класс SmartForm, который будет наследовать от Form из предыдущей задачи и сохранять значения инпутов и textarea после отправки.

То есть если мы сделали форму, нажали на кнопку отправки — то значения из инпутов не должны пропасть. Мало ли что-то пойдет не так, например, форма некорректно заполнена, а введенные данные из нее пропали и их следует вводить заново. Этого следует избегать.

Создайте класс Cookie — оболочку над работой с куками. Класс должен иметь следующие методы: установка куки set(имя куки, ее значение), получение куки get(имя куки), удаление куки del(имя куки).

Создайте класс Session — оболочку над сессиями. Он должен иметь следующие методы: создать переменную сессии, получить переменную, удалить переменную сессии, проверить наличие переменной сессии.

Сессия должна стартовать (session_start) в методе __construct.

Реализуйте класс Flash, который будет использовать внутри себя класс Session из предыдущей задачи (именно использовать, а не наследовать).

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

Класс должен иметь да метода — setMessage, который сохраняет сообщение в сессию и getMessage, который получает сообщение из сессии.

Создайте класс-оболочку Db над базами данных. Класс должен иметь следующие методы: получение данных, удаление данных, редактирование данных, подсчет данных, очистка таблицы, очистка таблиц.

Создайте класс Log для ведения логов. Этот класс должен иметь следующие методы: сохранить в лог, получить последние N записей, очистить таблицу с логами.

Класс Log должен использовать класс Db из предыдущей задачи (именно использовать, а не наследовать).

Урок 1 Курс По Ооп Php Класс И Объект

Длительность: 17 мин и 43 сек

Битрейт: 192 Kbps

Урок 2 Курс По Ооп Php Свойства Объекта

Основные Принципы Объектно Ориентированного Программирования Что Такое Ооп И Зачем Оно Нужно

Object Oriented Php

Учим Php За 1 Час От Профессионала

Хауди Хо™ — Просто о мире IT!

Урок 05 Php Ооп Ключевые Слова This Self Static

Php Уроки 19 Функции Php Для Начинающих

Php Start Теория Урок 16 Ооп 4 Абстрактный Класс Интерфейс

Создание Cms На Php 1 Урок Структура

Изучение Php Для Начинающих Урок 1 Основы Php

Урок 1 Ооп Объектно Ориентированное Программирование

Основы Ооп На Примере Java Часть 1

Компьютерная школа Hillel

Методы И Данные В Ооп

7 Урок Разработка На D7 Введение Ооп И Модули Видео 1 1

Уроки Python Для Начинающих 1 Программирование На Python

Php Start Теория Урок 13 Ооп 1 Классы Объекты Свойства Методы

Php Уроки Ооп Базовое Php Ооп Урок 12 Зачем Ооп Как Использовать Ооп Зачем Абстракция

Урок 1 Php Классы Объекты Методы

Объектно Ориентированное Программирование

Php Start Теория Урок 10 Сессии

Good As Hell Lizzo

Привет Matrang Баста

Hurt You Stingray

Преступление И Наказание Анна Плетнёва Винтаж

Phaeleh Should Be True

Бои Без Правил Live Ария

Hair Down Feat Kendrick Lamar Sir

По Синей Грусти

Illenium Let You Go Ft Ember Island

Мне Так Хорошо Мари Краймбрери

Песня Похищение Невести

Living In Denial Michael Kiwanuka

The Lovin Spoonful Daydream Audio

Dead Valentine Mister Misery

Said The Sky Superstar Lyrics With Dabin Feat Linn

Новый Мерин Morgenshtern

Музыка На Бухач

Monoplane Trust Me Original Mix

Credo Bizzba Remix Zivert

Петь Блюз Заточка

Сердцеедка Егор Крид

Новый Поворот Брасс

Музыка Под Видит

My Chemical Romance Teenagers

Там За Морем Shoo

Oceanvs Orientalis 2020

Deep In Love Day6

Daddy Rollin Stone Derek Martin

Кислота Я Сахар

Урок 1 Курс По Ооп Php Класс И Объект

Денис Стал Неформалом Смена Имиджа Влог

Разбор Эффектов Little Big Rock Paper Scissors

Хмельная Сирень Ю Антонов

Bryson Tiller X 6Lack Type Beat Honesty Trap Soul Rnb Instrumental 2020

Decoding The Rdna Architecture And Amd S New Navi 20 Roadmap

Stop Self Sabotage With This One Vital Step

Huawei P30 Lite Vs Honor 20 Lite

Перевозим Гиганта Я Смог Проехать По Машинам До Финиша Адское Командное Испытание В Гта 5 Онлайн

Julia Michaels Into You Audio

Натуральный Напиток Для Очистки

Woodland Landscape Photography Golden Ears Provincial Park British Columbia

Крым 2020 Село Золотое Караларский Парк

Travel With Me Gokarna Indian Youtuber

Vicky Rosti Sata Salamaa

The Best Hand Position For Driving

Avicii Perfect Melodies On Piano

Totally Accurate Battle Simulator Тест Демона И Новых Юнитов

Как Заработать На Объявлениях Недвижимости На Авито

Объектно-ориентированное программирование для начинающих

Для многих PHP программистов объектно-ориентированное программирование является пугающей концепцией, забитой сложным синтаксисом и другими препятствиями на пути к освоению. В данной статье концепция объектно-ориентированного программирования (ООП) представляется в виде стиля кодирования, который позволяет группировать взаимосвязанные действия в классы, чтобы создать более компактный и эффективный код.

Что такое объектно ориентированное программирование

Объектно-ориентированное программирование — это стиль кодирования, который позволяет разработчику группировать схожие задачи в классы. Таким образом код соответствует принципу DRY (don’t repeat yourself – не повторяй самого себя) и становится лёгким для сопровождения.

Одним из преимуществ DRY программирования является то, что если некоторая информация требует изменения вашей программы, то нужно изменять код лишь в одном месте, чтобы обновить алгоритм. Одним из самых страшных ночных кошмаров разработчика является сопровождение кода, в котором данные объявляются снова и снова, что превращает любые изменения в программе в бесконечную игру «прятки», в ходе которой приходится охотиться на повторяющиеся данные и куски алгоритма.

ООП пугает многих разработчиков, потому что оно вводит новый синтаксис и, на первый взгляд, кажется более сложным, чем простое процедурное кодирование. Однако, при более тщательном ознакомлении, ООП оказывается в действительности очень чётким и чрезвычайно простым подходом к программированию.

Что такое объекты и классы

Прежде, чем погрузиться в чёткие определения ООП, необходимо составить общее представление о разнице между классами и объектами. Данный раздел статьи поможет составить представление о классах, их различных возможностях и некоторых применениях.

В чем заключается разница между классами и объектами

Разработчики, начиная разговаривать о классах и объектах, начинают подменять понятия. К сожалению, такое очень часто происходит.

Класс, например, это проект дома. Он определяет на бумаге как будет выглядеть дом, чётко описывает все взаимосвязи между его различными частями, даже если дом не существует в реальности.

А объект — это реальный дом, который построен в соответствии с проектом. Данные, которые хранятся в объекте похожи на дерево, провода и бетон, из которых построен дом: без сборки в соответствии с проектом, они будут всего лишь кучей материалов . Однако, собранные вместе они становятся отличным и удобным домом.

Классы формируют структуру данных и действий и используют эту информацию для строительства объектов. Из одного класса может быть построено более одного объекта в одно и тоже время, каждый из них будет независим от других. Продолжая аналогию со строительством, целый район может быть построен по одному проекту: 150 различных домов, которые выглядят одинаково, но в каждом из них живут разные семьи и внутренняя отделка строений разная.

Структура класса

Синтаксис для создания класса очень прост: для объявления класса используется ключевое слово class, за которым следует имя класса и набор фигурных скобок (<>):

После создания класса, новый объект может быть реализован и сохранен в переменной с использованием ключевого слова new:

Чтобы увидеть содержимое объекта, используйте var_dump():

Можно протестировать весь процесс, скопировав весь код в файл test.php :

Загрузите страницу в ваш браузер и на экране должна появиться следующая строка:

Вы только что создали свой первый скрипт ООП.

Определение свойств класса

Свойства, или переменные класса, используются для того, чтобы добавить данные в класс. Свойства работают как обычные переменные, но они связаны с объектом, и к ним можно получить доступ только используя объект.

Чтобы добавить свойства классу MyClass, используйте такой код в вашем скрипте:

Ключевое слово public определяет видимость свойства, мы расскажем о нем чуть позже в данной главе. Затем свойство именуется с использованием обычного синтаксиса для переменных, и ему присваивается значение (хотя свойство класса не нуждается в инициализации).

Чтобы прочитать значение свойства и вывести его в браузере, нужно сослаться на объект, из которого будет производиться чтение:

Так как может существовать несколько реализаций класса, то без ссылки на конкретный объект, свойство не может быть прочитано, потому что скрипт не может определить, из какого объекта следует читать. Стрелка (->) — это конструкция ООП, которая используется для получения доступа к свойствам и методам заданного объекта.

Модифицируйте скрипт в test.php, чтобы прочитать значение свойства, а не выводить информацию обо всем классе:

Обновите страницу в вашем браузере, чтобы увидеть результат работы скрипта:

Определение методов класса

Метод — это функция класса. Индивидуальное действие, которое может выполнить объект, определяется в классе как метод.

Например, создадим методы, которые устанавливают и читают значение свойства $prop1:

Примечание — ООП позволяет объекту ссылаться на самого себя, используя $this. При работе внутри метода, использование $this позволяет использовать имя объекта вне класса.

Топ-пост этого месяца:  HTTP-сайты не будут выделяться в выдаче Google специальной меткой

Чтобы использовать метод, вызовите его как обычную функцию, но сначала укажите объект, которому она принадлежит. Читаем свойство из MyClass, изменяем значение, читаем его снова:

Обновляем страницу в браузере и видим следующее:

Преимущества ООП проявляются при использовании множества объектов одного класса.

Когда вы загрузите страницу в браузер, то увидите следующее:

Обратите внимание, ООП сохраняет объекты как различные сущности, что позволяет легко разделять код на различные маленькие и взаимосвязанные части.

Магические методы в ООП

Чтобы сделать использование объектов проще, PHP имеет несколько магических методов. Это специальные методы, которые вызываются, когда над объектом производятся определённые действия. Таким образом разработчик может выполнить несколько общих задач относительно просто.

Использование конструкторов и деструкторов

Когда создаётся объект, очень часто нужно, чтобы при этом сразу производились установки некоторых свойств. Для выполнения таких задач PHP имеет магический метод __construct(), который вызывается автоматически при создании нового объекта.

Для иллюстрации концепции, добавим конструктор к классу MyClass. Он будет выводить сообщение при создании нового объекта класса:

Примечание — константа __CLASS__ возвращает имя класса, в котором она вызывается; это одна из магических констант PHP.

Обновляем страницу в браузере и получаем результат:

Для вызова функции в процессе удаления объекта используется магический метод __destruct(). Это очень полезный метод для корректной очистки свойств класса (например, для правильного закрытия соединения с базой данных).

Выведем сообщение, когда будет удаляться объект класса, с помощью магического метода:
__destruct() in MyClass:

Обновляем страницу в браузере и получаем результат:

При достижении конца файла PHP автоматически освобождает все ресурсы.

Для явного вызова деструктора и удаления объекта Вы можете использовать функцию unset():

Теперь результат работы кода будет выглядеть после загрузки в браузер следующим образом:

Преобразование в строку

Чтобы избежать ошибки, если скрипт попытается вывести MyClass как строку, используется другой магический метод __toString().

Без использования __toString() попытка вывести объект как строку приведёт к фатальной ошибке. Попробуйте использовать функцию echo, чтобы вывести объект без применения магического метода:

Результат работы будет выглядеть следующим образом:

Чтобы избежать ошибки, используйте метод __toString():

В этом случае попытка конвертировать объект в строку приведёт к вызову метода getProperty(). Загружаем скрипт в браузер и смотрим на результат работы:

Подсказка — В дополнение к магическим методам, которые использовались в данном разделе, существует ещё несколько полезных функций. Чтобы получить полный список магических методов смотрите руководство по PHP.

Использование наследования классов

Классы могут наследовать методы и свойства от других классов с помощью ключевого слова extends. Например, создадим второй класс, который расширяет возможности MyClass и добавляет метод:

После загрузки скрипта в браузер получим результат:

Перегрузка унаследованных свойств и методов

Чтобы изменить поведение существующих свойств или методов в новом классе, вы можете просто перегрузить их с помощью повторного объявления в новом классе:

Изменения приведут к следующему выводу при выполнении кода:

Сохранение оригинальной функциональности при перегрузке методов

Чтобы добавить новую функциональность к унаследованному методу при сохранении функций оригинального метода, используйте ключевое слово parent с оператором разрешения видимости (::):

Выше приведённый код при выполнении выведет на экран сообщения из обеих конструкторов нового и родительского класса:

Определение области видимости свойств и методов

Для дополнительного контроля над объектами, методами и свойствами устанавливается область видимости. Таким образом контролируется как и откуда могут быть доступны свойства и методы. Существует три ключевых слова для установки области видимости: public, protected, и private. В дополнение к установке области видимости, методы и свойства могут быть объявлены как static, что позволяет получать к ним доступ без реализации класса.

Примечание — Область видимости — это новое свойство, которое было введено в PHP 5. чтобы узнать о совместимости ООП с PHP 4, смотрите руководство по использованию PHP.

Свойства и методы public (Общие)

Все свойства и методы, которые вы использовали ранее в данной статье были public (общими). Это значит, что доступ к ним можно было получить где угодно, как внутри класса, так и вне класса..

Методы и свойства protected (Защищённые)

Когда свойство или метод объявляется с директивой protected, оно может быть доступно только внутри самого класса или внутри производных классов (классов, которые расширяют базовый класс, содержащий метод с директивой protected).

Объявим метод getProperty()как protected в MyClass и попробуем получить доступ к нему вне класса:

При попытке выполнить скрипт, будет сгенерирована следующая ошибка:

Теперь, создадим новый метод в MyOtherClass для вызова метода getProperty():

При выполнении скрипта результат будет таким:

Методы и свойства private (Частные)

Свойства и методы, объявленные с директивой private, доступны только внутри класса, в котором они определены. Это означает, что даже если новый класс будет производным от класса, в котором определены частные свойства и методы, они не будут доступны в производном классе.

Для демонстрации объявим метод getProperty() как private в MyClass, и попробуем вызвать метод callProtected() из
MyOtherClass:

сохраняем скрипт, обновляем страницу в браузере и получаем следующее:

Методы и свойства Static (статические)

Методы и свойства, объявленные с директивой static могут быть доступны без инициации класса. Вы просто используете имя класса, оператор разрешения видимости и имя свойства или метода.

Одним из основных преимуществ статических свойств является то, что они сохраняют свои значения на протяжении работы всего скрипта.

Для демонстрации добавим статическое свойство $count и статический метод plusOne() к классу MyClass. Затем установим цикл do. while для вывода увеличивающего значения $count, до тех пор пока оно не станет больше 10:

Примечание — Для доступа к статическим свойствам знак доллара ($) должен стоять после оператора разрешения видимости.

Выполнение скрипта в браузере выдаст следующий результат:

Комментирование с помощью DocBlock

Не являясь официальной частью ООП, комментирование в стиле DocBlock широко используется как метод документирования классов. Кроме того, оно адаптировано для многих популярных пакетов разработчиков, таких как Eclipse и NetBeans, и используется для генерации описания кода.

DocBlock определяется с помощью блочного комментария, который имеет в начале дополнительную звездочку:

Действительная мощность DocBlocks открывается при использовании тегов, которые начинаются с символа (@) за которым без пробелов следует имя тега и значение. Теги DocBlock позволяют разработчику определять автора файла, лицензию на использование класса, информацию о свойствах и методах, а также много другой полезной информации о коде.

Наиболее популярные теги:

@author: автор текущего элемента (который может быть классом, файлом, методом, или частью кода). В одном DocBlock могут быть указаны несколько авторов. Формат имени автора: Джони Doe .

@copyright: Тег указывает год и владельца копирайта на текущий элемент. Формат: 2010 Владелец копирайта.

@license: Ссылка на тип лицензии текущего элемента. Формат:
http://www.example.com/path/to/license.txt Название лицензии.

@var: Содержит тип и описание переменной или метода класса. Формат: тип элемент описание.

@param: Содержит тип и описание параметров функции или метода. Формат: тип $элемент описание элемента.

@return: Тип и описание возвращаемого значения для функции или метода. Формат: тип возвращаемое_значение описание.

Простой класс с комментариями в стиле DocBlocks может выглядеть так::

Преимущество стиля DocBlock очевидны: все чётко определено, так что другой разработчик может легко разобраться в коде.

Сравнение объектно-ориентированного и процедурного программирования

Нет правильного и ошибочного стиля программирования. Данный раздел описывает сильные аргументы в пользу использования объектно-ориентированного программирования для разработки программного обеспечения, особенно при реализации крупных проектов.

Аргумент 1: простота применения

Не смотря на то, что ООП сначала приводит в растерянность, оно в действительности обеспечивает более простой подход для работы с данными. Так как объект может хранить данные внутри себя, то нет необходимости предавать переменные от функции к функции для корректной работы.

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

Процедурный подход

Ниже приводится процедурный подход для нашего примера:

«; echo «»; // Томми получил повышение и у него день рождения $person1 = changeJob($person1, ‘Главный двигатель коробочек’); $person1 = happyBirthday($person1); // У Джони только день рождения (повысят в другой раз) $person2 = happyBirthday($person2); // Выводим новый значения информации о людях echo «»; echo «»; ?>

Выполнение кода приведёт к следующему результату:

Не смотря на то, что такой код может быть и отличным, разработчику приходится слишком много моментов держать в памяти. Массив атрибутов каждой персоны должен быть передан в процедуру и возвращён из неё при каждом вызове, что составляет обширное поле для ошибок.

Желательно, чтобы для разработчика оставалось как можно меньше мест для ошибок. Только действительно нужная информация для конкретной операции должна передаваться в функции.

Подход ООП

Вот подход ООП для решения нашего примера:

«; echo «»; // Даем Томми повышение и устанавливаем день рождения $person1->changeJob(«Главный двигатель коробочек»); $person1->happyBirthday(); // Джони будет праздновать только день рождения $person2->happyBirthday(); // Выводим окончательную информацию о людях echo «»; echo «»; ?>

Данный код выдаст следующий результат:

В данном случае немного больше кода используется для реализации, но как только классы определены, создание и модификация данных о людях выполняется легко и непринуждённо. Информацию о человеке не нужно предавать или возвращать из метода, в каждый метод передаётся только то, что нужно.

В проектах маленького масштаба разница может показаться очень маленькой. Но как только проект начинает расти в размерах, ООП существенно уменьшает нагрузку на разработчика, если применяется правильно.

ПодсказкаВ ООП нуждается далеко не все. Быстрые маленькие функции, которые обрабатывают что-нибудь обычно не нуждаются в организации класса. Используйте разумный подход при выборе между ООП и процедурным подходом.

Аргумент 2: лучшая организация

Другим преимуществом ООП является то, насколько хорошо код получается организованным для создания пакетов разработчика и каталогов. Каждый класс можно хранить в отдельном файле. А если используется унификация имён классов, то доступ к классу становится чрезвычайно простым.

Предположим у вас есть приложение со 150 классами, которые получают имена динамически с помощью контрольного файла в корне вашего приложения. Все 150 классов используют унификацию имён в соответствии с форматом class.classname.inc.php и хранятся в папке inc в вашем приложении.

Контроллер может использовать PHP функцию __autoload() для динамического присоединения только тех классов, которые нужны, а не включать все 150 просто на всякий случай:

Использование для хранения каждого класса своего собственного файла делает код более мобильным и простым для многократного использования без дублирования.

Аргумент 3: легче обеспечивать поддержку

При правильном использовании ООП позволяет получить более компактный код. Поэтому, гораздо проще внести изменения в код, чем разматывать спагетти процедурной реализации.

Если определённый массив информации получает новый атрибут, то при процедурном подходе ( в худшем случае) может потребоваться вставлять новый атрибут в каждую функцию, которая использует массив. А приложение ООП может быть изменено простым добавлением нового свойства и нового метода для обработки свойства.

Большинство преимуществ, описанных в данном разделе являются продуктом сочетания ООП и DRY программирования. Возможно создать простой для поддержки процедурный код, который не будет ночным кошмаром разработчика, и сделать ужасный проект на принципах ООП. Pro PHP и jQuery являются отличными примерами хороших привычек программирования в сочетании с ООП для генерации кода, который легко читать и модифицировать.

Резюме

Изучение ООП продвигает вас на следующий уровень в программировании. При правильном использовании ООП помогает Вам создавать легко читаемый, простой для поддержки, портативный код, который сохранит для вас (и для тех, кто работает с вами) часы напряженной работы над проектом.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: net.tutsplus.com/tutorials/php/object-oriented-php-for-beginners/
Перевел: Сергей Фастунов
Урок создан: 23 Июля 2010
Просмотров: 211270
Правила перепечатки

5 последних уроков рубрики «PHP»

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

php уроки ооп [базовое php ооп] | Урок 1. Класс, объект, методы и свойства

Просмотров: 4 818

20 декабря 2020

Sergey Smirnov

Спасибо за уроки, полезная информация. Подписался, надеюсь канал еще не умер. уже 10 месяцев нет новых видео.

Александр Осинский

Михаил, спасибо вам за уроки ! Вы не могли бы записать урок по размышлению над объектной моделью ? т.е придумать очень простой парсер к примеру или что-то другое..и рассказать о ваших действиях, на бумаге, а потом и в коде . как вы создаете модель, класс, почему нужно было создать отдельный класс. Почему динамический и так далее.. хотелось бы увидеть образ вашего мышления при построении объектной модели.

Топ-пост этого месяца:  Как связать Яндекс.Директ и Метрику пошаговая инструкция

Jim Halpert

Хорошие уроки, спасибо автору.

boycovclub

Добрый день Автор канала.
Хотелось бы от подписчиков и всех тех кто будет смотреть это и другие видео ,которые будешь выставлять попросить чтобы шрифт на IDE сделать покрупнее так как не все ребята с компа смотрят,многие ребята хотели бы и с телефона смотреть.
Спасибо за понимание.

Tornado

Использования такого примера,сразу рушит идею инкапсуляции.

The Best Survival

Удачи тебе дружище, по моему неплохо пример привел!

Урок 1. Курс по ООП PHP. Класс и объект

Разработка веб-приложений с помощью объектно-ориентированного подхода на языке PHP поначалу может сбить с толку тех разработчиков, которые привыкли использовать процедурный подход, но на самом деле ничего сложного в ООП нет. В данном курсе мы рассмотрим теоретические аспекты ООП, а также научимся применять полученные знания на практике.

Курс состоит из 17 уроков, в которых мы шаг за шагом изучим основы ООП, которых должно быть достаточно для написания приложений в объектном стиле.

Изучив этот курс, Вы будете понимать, что такое объектно-ориентированное программирование, узнаете, что такое классы и объекты, а также поймете разницу между ними. Узнаете о свойствах, методах и константах класса.

После прохождения курсы Вы сможете использовать наследование классов для создания удобной и гибкой логики Вашего веб-приложения, создавать разветвленные иерархии классов. Будете уметь переопределять методы и тем самым расширять их функционал, создавать абстрактные классы. Из курса вы узнаете смысл использования интерфейсов и научитесь использовать их там, где это действительно может требоваться, а не использовать интерфейсы ради интерфейсов. Особое внимание в курсе отведено теме автозагрузки классов, что позволит исключить длинные списки подключаемых файлов. Здесь вы узнаете, как о функциях автозагрузки, так и научитесь использовать для этой цели пакетный менеджер Composer.

Все это и многое другое вы узнаете из уроков предлагаемого курса по ООП в PHP.

Урок 0. Курс по объектно-ориентированному программированию (ООП PHP). Введение

Урок 1. Курс по ООП PHP. Класс и объект

От автора: этим уроком мы начинаем курс по изучению объектно-ориентированного программирования (ООП) в PHP. В первом уроке мы рассмотрим необходимый для работы инструментарий (редактор для написания кода и сервер), а также начнем изучение самых основ ООП с понятий класса и объекта.

Урок 2. Курс по ООП PHP. Свойства объекта

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Мы уже знаем, что такое класс и что такое объект в объектном программировании. И в этом уроке мы познакомимся с полями класса, которые чаще всего называют свойствами. Свойства – это ни что иное, как переменная, объявленная в классе. О работе со свойствами мы и поговорим в уроке.

Урок 2. Курс по ООП PHP. Свойства объекта

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Мы уже знаем, что такое класс и что такое объект в объектном программировании. И в этом уроке мы познакомимся с полями класса, которые чаще всего называют свойствами. Свойства – это ни что иное, как переменная, объявленная в классе. О работе со свойствами мы и поговорим в уроке.

Урок 3. Курс по ООП PHP. Методы объекта

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

Урок 4. Курс по ООП PHP. Методы __construct и __destruct

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В предыдущем уроке мы с вами познакомились с методами объектов, научились создавать и вызывать их. В этом уроке мы познакомимся с уже готовыми методами, которые предлагает нам PHP, — это методы __construct и __destruct. Данные методы относятся к категории магических, поскольку их не нужно вызывать, они сами вызываются при наступлении того или иного события.

Урок 5. Курс по ООП PHP. Домашнее задание. Класс для работы с файлом

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Итак, мы с вами уже знаем, что такое класс, объект, свойства и методы. Давайте попробуем закрепить полученные знания, написав простейший класс для работы с файлом.

Урок 6. Курс по ООП PHP. Константы класса. Статические свойства и методы

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Данный урок мы посвятим изучению сразу нескольких тем, которые связаны друг с другом – константы класса, статические свойства и методы. В отличие от обычных свойств и методов, указанные выше принадлежат не объекту, а классу. В чем разница мы и узнаем из данного урока.

Урок 7. Курс по ООП PHP. Наследование. Часть 1

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Этот и следующий урок мы посвятим одной из ключевых тем объектно-ориентированного программирования – теме наследования. Благодаря реализации наследования мы можем организовать связь классов по принципу родительский-дочерний и добавлять дополнительную функциональность без необходимости дублирования кода.

Урок 8. Курс по ООП PHP. Наследование. Часть 2

От автора: Продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В этом уроке мы продолжим изучение одной из ключевых тем объектно-ориентированного программирования – темы наследования. Благодаря реализации наследования мы можем организовать связь классов по принципу родительский-дочерний и добавлять дополнительную функциональность без необходимости дублирования кода.

Урок 9. Курс по ООП PHP. Модификаторы доступа

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В этом уроке мы рассмотрим еще один из ключевых моментов ООП – модификаторы доступа. Благодаря модификатором public, protected и private мы можем определять область видимости свойств, методов и констант.

Урок 10. Курс по ООП PHP. Абстрактные классы и интерфейсы

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Этот урок мы отведем для изучения относительно сложных для понимания тем – абстрактных классов и интерфейсов. В отличие от обычных классов, абстрактные классы не предполагают возможности создания объекта и по сути несут лишь описательный смысл возможных объектов. Интерфейсы же и вовсе не предполагают реализации, указывая лишь набор методов, которые должен реализовать класс.

Урок 11. Курс по ООП PHP. Интерфейсы и контроль типа

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В данном уроке мы продолжим освещение темы интерфейсов и их практического использования, поскольку у новичков и не только именно данный аспект вызывает недопонимание.

Урок 12. Курс по ООП PHP. Автозагрузка и пространства имен

От автора: Продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В этом уроке мы рассмотрим такие полезные темы, как автозагрузка классов и пространства имен (namespace). Пока что мы учимся и классов у нас не так много, поэтому подключить каждый из них – не сложно. Однако, в реальных проектах у вас могут быть сотни классов, каждый из которых находится в своем файле. Соответственно, мы просто утонем во множестве инструкций require и include. Автоматизировать этот процесс поможет автозагрузка классов и пространства имен, с которыми мы и познакомимся в уроке.

Урок 13. Курс по ООП PHP. Composer и автозагрузка

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В прошлом уроке мы с вами рассматривали тему автозагрузки классов и написали соответствующую функцию, которая замечательно справляется со своей работой. Однако, данная функция будет хорошо работать только с нашими классами. Если же мы захотим подключать сторонние библиотеки, то скорее всего, столкнемся с проблемой их подключения. Решить эту проблему поможет пакетный менеджер Composer, с которым мы и поработаем в этом уроке.

Урок 14. Курс по ООП PHP. Трейты

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. PHP не поддерживает множественного наследования, вследствие чего могут возникнуть ситуации, когда нам все же придется дублировать некоторый код. Однако, на самом деле дублирования можно избежать, воспользовавшись трейтами. В этом уроке мы узнаем, что такое трейты в PHP и как их использовать.

Урок 15. Курс по ООП PHP. Позднее статическое связывание

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. В этом уроке мы рассмотрим одну из особенностей, которая появилась в PHP 5.3 – позднее статическое связывание. Что это такое и где может быть полезно – вы узнаете из предлагаемого урока.

Урок 16. Курс по ООП PHP. Магические методы

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. Как вы уже знаете, PHP предлагает ряд магических методов, с двумя из которых вы уже знакомы (__construct и __destruct). Данные методы вызываются при наступлении некоторых событий и без нашего участия. В этом уроке мы познакомимся с еще несколькими магическими методами, в частности с методами __set, __get и __toString.

Урок 17. Курс по ООП PHP. Шаблоны проектирования

От автора: продолжаем изучение объектно-ориентированного программирования (ООП) в PHP. При разработке веб-приложений часто приходится решать одни и те же задачи. Для многих из них были найдены универсальные решения, которые и принято называть шаблонами проектирования. Использование шаблонов проектирования в PHP может существенно сэкономить время, помочь выработать общую стратегию построения веб-приложений и упростит процесс создания документации для ваших скриптов. В этом уроке мы с вами рассмотрим тему шаблонов проектирования и познакомимся с одним из них.

Урок 1. Курс по ООП PHP. Класс и объект

Смотреть видео Урок 1. Курс по ООП PHP. Класс и объект на Ruslar.Pro бесплатно

170 | 18
WebForMySelf | 2 год.

Полный курс по объектно-ориентированному программированию (ООП PHP) тут: https://webformyself.com/category/premium/php-premium/oopphppremium/

#оопphp
#оопphpдлячайников
#оопphpуроки
#оопphp7
#оопphpпрактика
#phpmysqlооп
#phpоопкнига
#оопphpбд
#phpоопуроки
#объектноориентированноепрограммирование
#объектноориентированныеязыкипрограммирования
#объектноориентированноепрограммированиеphp
#php
#урокиphpдляначинающих
#видеоурокиphp
#урокиphpснуля
#phpурокипрограммирования
#phpклассы
#phpметодыкласса
#phpобъекты
#phpсвойстваобъекта
#phpметодыобъекта

Урок 1. Курс по ООП PHP. Класс и объект

Полный курс по объектно-ориентированному программированию (ООП PHP) тут: [ссылка]

#оопphp
#оопphpдлячайников
#оопphpуроки
#оопphp7
#оопphpпрактика
#phpmysqlооп
#phpоопкнига
#оопphpбд
#phpоопуроки
#объектноориентированноепрограммирование
#объектноориентированныеязыкипрограммирования
#объектноориентированноепрограммированиеphp
#php
#урокиphpдляначинающих
#видеоурокиphp
#урокиphpснуля
#phpурокипрограммирования
#phpклассы
#phpметодыкласса
#phpобъекты
#phpсвойстваобъекта
#phpметодыобъекта

О сервисе MosVideos.com

MosVideos.com — это сервис, который предоставляет вам возможность быстро, бесплатно и без регистрации скачать видео с YouTube в хорошем качестве. Вы можете скачать видео в форматах MP4 и 3GP, кроме того можно скачать видео любого типа.

Ищите, смотрите, скачивайте видео — все это бесплатно и на большой скорости. Вы даже можете найти фильмы и скачать их. Результаты поиска можно сортировать, что упрощает поиск нужного видео.

Скачать бесплатно можно фильмы, клипы, эпизоды, трейлеры, при этом вам не нужно посещать сам сайт Youtube.

Скачивайте и смотрите океан бесконечного видео в хорошем качестве. Все бесплатно и без регистрации!

ООП для начинающих в PHP. Введение основы ООП. Классы и объекты.

Просмотров: 76 676

Gevorg Web

отличный ролик, эх как бы тяжело было бы изучать ооп. если бы не сделал бы этот ролик

Читаю много комментариев про рекламу.
Не увидел ни одной рекламы — потому что Youtube Premium )))
Наверно 11 месяцев назад не было такой возможности

Frie666

Пока всё понятно, смотрим дальше

Андрей Ильин

«ооп — объектно ориентированный подход»

Игорь Болдырев

вот то что я делал по Вашему примеру:

Выдает:
Parse error: syntax error, unexpected ‘$a’ (T_VARIABLE), expecting function (T_FUNCTION) in OSPanel\domains\go\Index.php on line 4
Что это может быть.

Иван Миронов

для всех, кому мешает реклама. Ставьте блокировщик рекламы и наслаждайтесь. хотите быть программистами, а убрать рекламу не можете.

sbis13

Так где пример класса? Пролюбили?

sbis13

Как же Вы «залюбили» своим — «не забудьте поставит точку с запятой в конце». Материал развернуто не хотите попытаться рассказать?

Anton Nikolenko

На скорости x1.5 полет нормальный

Beket Samaluly

TOP JAM — Танцевальная студия Видео

Здравствуйте! Вы можете помочь скинуть мне тему phpstorm как-то? Давно ищу именно как у вас. Не мог найти. Подобные есть, но не то. С нуля менять все тоже не хочется. Буду благодарен!

TOP JAM — Танцевальная студия Видео

Что за тема для phpstorm?

TOP JAM — Танцевальная студия Видео

Volodymyr

сука.. сколько рекламы. да подавись ты падла!

Таксист-Эволюционер

Спасибо за Ваши уроки , они позволяют понять основы языков и понимать структуру ,выбирать направления движения в развитии.

Entity

Andrew Lobur

Слишком много рекламы на 10 минут видео.

Sergiy Dyukar

Рекламы больше, чем уроков. Вроде и уроки нормальные, но от количество рекламы — тошно.

Valerie Valley RR

перехожу с процедурного на ООП и сразу масса вопросов:
для начала, не Card, а Cart
затем:
непонятно, зачем в корзине хранить свойства продуктов, достаточно одних идентификаторов?
почему класс в индексе, а не в отдельном файле?
при таком введении, имеет ли смысл дальше смотреть?

Kopf Jäger

Автор, столько рекламы пихать не красиво. 9 реклам на 10 минут !

Урок 1. Курс по ООП PHP. Класс и объект

Показать панель управления

  • Опубликовано: 8 мар 2020 veröffentlicht
  • Полный курс по объектно-ориентированному программированию (ООП PHP) тут: webformyself.com/category/premium/php-premium/oopphppremium/

Комментарии • 8

Windows? Простите, а почему не Linux? Логи, нагрузки, и управление демонами в лине проще (ИМХО)

ООП — объектно ориентированное программирование, а не подход. Я зануда.

почему при создании файла для будущего класса вы не используете опцию New — Php Class? Она же на порядок упрощает создание класса.

Добавить комментарий