Створення класу в php
PHP - це об`єктно-орієнтована мова, і можливостей у нього в цьому напрямку дуже багато, і зовсім нерозумно не використовувати. Для тих, хто не знайомий з ООП пропоную почитати цю статтю: ООП в jаvascript. Основою ООП є об`єкт, а фабрикою для створення об`єктів є клас. І як раз про створення класів в PHP ми і поговоримо в цій статті.
Клас складається з наступних частин:
- Властивості.
- Конструктор.
- Методи.
Але перш, ніж додавати всі ці частини давайте створимо опис класу (нехай файл називається "myclass.php"):
Відео: PHP Devel Studio [Урок # 50] - Створення Своїх php Скриптів (Класів, функцій)
lt ;?php
classMyClass{
}
?gt;
Тут ми створили порожній клас з ім`ям "MyClass". Тепер додамо в наш клас якості для нашого майбутнього об`єкта:
lt ;?php
classMyClass{
public $ x-
public $ y-
const pi =3.1415926-
}
?gt;
Тут ми створили три властивості (до речі, властивості іноді ще називають полями). Зверніть увагу, що вони доступні за межами класу (модифікатор доступу - "public"). Якби замість"public" був би "private", То вони були б доступні тільки всередині самого класу, а якщо"protected", То в самому класі і в спадкоємців (дочірніх класах). Втім, більш детально, ми поговоримо про них в наступних статтях.
Також ми додали одну константу. І зверніть увагу, що перед ім`ям константи немає знака "$", Тобто це не змінна, і цей знак ставити не треба.
Тепер створимо конструктор.
Відео: Урок 1. Введення. Класи. Властивості і методи класу
lt ;?php
classMyClass{
public $ x-
public $ y-
const pi =3.1415926-
publicfunction __construct($ x, $ y){
$ this-gt;x = $ x-
$ this-gt;y = $ y-
echo "Був створений об`єкт з параметрами: $ x і $ y"-
}
}
?gt;
Конструктор в PHP - це функція __construct (). Цієї функції ми можемо передавати параметри, які потім якимось чином використовувати. В даному випадку, ми отримали параметри з конструктора і записали їх в якості класу. Зверніть увагу, що звернення до властивостей класу треба звертатися через $ This-gt; імя_ властивості. Також ми вивели рядок просто для того, щоб Ви розуміли, що в конструкторі Ви можете робити все, що побажаєте (як у звичайній функції).
Тепер перейдемо до останнього пункту створення класу - це додавання методів. Додамо метод, який вважає і повертає суму властивостей x і y, а також метод, який повертає константу pi:
lt ;?php
classMyClass{
public $ x-
public $ y-
const pi =3.1415926-
publicfunction __construct($ x, $ y){
$ this-gt;x = $ x-
$ this-gt;y = $ y-
echo "Був створений об`єкт з параметрами: $ x і $ y"-
}
function sum(){
$ sum = $ this-gt;x + $ this-gt;y-
return $ sum-
}
function getPI(){
returnself::pi-}
}
?gt;
Тут все дуже просто: створюємо змінну, в яку записуємо суму двох властивостей: x і y. Потім повертаємо результат. Другий метод повертає константу. Зверніть увагу, що ми звертаємося за допомогою такої конструкції: "self :: імя_константи". Так звертаються до константі усередині класу.
Відео: Створення фреймворка на php з нуля. Клас Router. урок 2
А тепер головне питання: "Як використовувати даний клас в PHP?". Для цього створюємо ще один файл, в якому пишемо такий код:
lt ;?php
require_once "Myclass.php"-
$ myobj =newMyClass(15,17) -
echo "
"-
echo $ myobj-gt;x-
echo "
"-
echo $ myobj-gt;y-
echo "
"-
echo MyClass::pi-
echo "
"-
echo $ myobj-gt;sum() -
echo "
"-
echo $ myobj-gt;getPI() -
?gt;
Тут ми спочатку підключили наш клас, потім створили об`єкт, передавши конструктору параметри (15 і 17). Потім почали виводити властивості. Як бачите, синтаксис такий: "імя_об`екта-gt; імя_свойства". Безумовно, дані властивості будуть виводитися тільки якщо вони public, а якщо вони є private або protected, то, відповідно, Ви побачите помилку. Також зверніть увагу на висновок константи: "ім`я_класу :: імя_константи".
Відео: 05 Створення класу бази даних
Потім ми використовуємо два методи (sum () і getPI ()) І друкуємо повертаються ними значення.
Якщо Ви вперше знайомитеся з ООП, то, думаю, що зараз Ви в шоці. І це не дивно, адже тема ця дуже складна, і по ній пишуть цілі томи. Я постараюся в подальших статтях розкрити цю тему, щоб Ви зрозуміли перевагу ООП, адже майже всі, хто пише великі скрипти на PHP використовують ООП, і без нього дійсно важко обійтися. А якщо Ви робите невеликі скрипти, то тоді ООП використовувати зовсім необов`язково. Але повірте моєму досвіду, що якщо Ви будете серйозно програмувати (необов`язково на PHP), То ООП Ви будете використовувати в майбутньому на повну котушку, і я постараюся Вам дати той фундамент, ту базу, від якої Ви зможете вже підвищувати свій рівень знань по цій темі.
- Як створити об`єкт по імені класу в php
- Об`єкт number в jаvascript
- Абстрактні класи в php
- Метод tostring () в php
- Вивчаємо coffeescript. Класи.
- Клас для відправки e-mail на php
- Серіалізация об`єктів в php.
- Об`єкт object в jаvascript
- Інтерфейси в php
- Reflection api. Reflectionclass.
- Створення винятків в php
- Простори назв в php.
- Модифікатори доступу в php
- Статичні властивості і методи в php
- Клас для роботи з базою даних
- Шаблон проектування "одинак" (pattern singleton).
- Поняття ооп в jаvascript
- Reflection api. Reflectionobject.
- Об`єкти, прототипи і конструктори в мові jаvascript.
- Створення движка на mvc. Створюємо авторизацію.
- Створення движка на mvc. Допрацьовуємо роутер.