Створення класу в php

Створення класу в PHP

PHP - це об`єктно-орієнтована мова, і можливостей у нього в цьому напрямку дуже багато, і зовсім нерозумно не використовувати. Для тих, хто не знайомий з ООП пропоную почитати цю статтю: ООП в jаvascript. Основою ООП є об`єкт, а фабрикою для створення об`єктів є клас. І як раз про створення класів в PHP ми і поговоримо в цій статті.

Клас складається з наступних частин:

  1. Властивості.
  2. Конструктор.
  3. Методи.

Але перш, ніж додавати всі ці частини давайте створимо опис класу (нехай файл називається "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), То ООП Ви будете використовувати в майбутньому на повну котушку, і я постараюся Вам дати той фундамент, ту базу, від якої Ви зможете вже підвищувати свій рівень знань по цій темі.

Поділися в соціальних мережах:

Схожі
Клас для відправки e-mail на phpКлас для відправки e-mail на php
Об`єкт number в jаvascriptОб`єкт number в jаvascript
Створення движка на mvc. Допрацьовуємо роутер.Створення движка на mvc. Допрацьовуємо роутер.
Абстрактні класи в phpАбстрактні класи в php
Метод tostring () в phpМетод tostring () в php
Reflection api. Reflectionclass.Reflection api. Reflectionclass.
Об`єкт object в jаvascriptОб`єкт object в jаvascript
Простори назв в php.Простори назв в php.
Створення винятків в phpСтворення винятків в php
Серіалізация об`єктів в php.Серіалізация об`єктів в php.
» » Створення класу в php