Що нового в php7.1: видимість констант.

Що нового в PHP7.1: видимість констант.

Відео: Уроки PHP 7

Всім привіт! У цій статті ми розглянемо, як використовувати видимість констант в PHP 7.1.

Як завжди, давайте відразу почнемо з прикладів.

classCarProduct{
const VAT =77.00-
}

classMercedesextendsCarProduct{
//
}

$ product
=newMercedes-

В такому коді ми можемо отримати значення константи таким чином:

echo $ product::VAT-

Тепер уявімо, що ми не хочемо, щоб значення можна було отримати таким чином, а тільки за допомогою методу, в якому будемо приєднувати знак відсотка.

classCarProduct{
const VAT =77.00-

publicfunction getVat(){
returnself::VAT.`%`-
}
}



Тепер ми можемо отримати доступ таким чином:

echo $ product-gt;getVat() -

Проблема в тому, що константа все так же залишається у відкритому доступі, і ми можемо отримати її значення так, як ми це робили раніше. Що ми можемо зробити, щоб заблокувати можливість отримання значення константи таким чином, оскільки ми хочемо, щоб її значення могло бути отримано тільки за допомогою методу?




Для вирішення цього питання в PHP 7.1 були додані вже добре нам знайомі ключові слова: public, protected і private. Працюють вони так само, як і зі змінними.

Давайте змінимо наш код:

Відео: Уроки PHP 7 | Цікли.While.Do-While.For.Foreach.If

// ...
protectedconst VAT =77.00-
// ...

Тепер, якщо ми спробуємо отримати доступ безпосередньо, то отримаємо помилку:

echo $ product::VAT-

Але зможемо отримати значення константи за допомогою методу. Якщо ви хочете, щоб отримувати значення константи можна було тільки всередині класу, де вона описана, то використовуйте ключове слово private.

А на цьому сьогодні все. Дякую за увагу!

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

Схожі
Об`єкт number в jаvascriptОб`єкт number в jаvascript
Що нового в php7.1: ключове слово void.Що нового в php7.1: ключове слово void.
Що нового в php7.1: поліпшення обробки $ this.Що нового в php7.1: поліпшення обробки $ this.
Створення движка на mvc. Виводимо сторінки. Частина 4.Створення движка на mvc. Виводимо сторінки. Частина 4.
Що нового в php7.1: нові повідомлення про помилки.Що нового в php7.1: нові повідомлення про помилки.
Простори назв в php.Простори назв в php.
Математичні функції в phpМатематичні функції в php
Створення класу в phpСтворення класу в php
Nodejs. Шаблони модулів.Nodejs. Шаблони модулів.
Що нового в php7.1: генерація випадкових чисел.Що нового в php7.1: генерація випадкових чисел.
» » Що нового в php7.1: видимість констант.