Як створити об`єкт по імені класу в php
Відео: Основи ООП в PHP. Створення класу і об`єкту в PHP
Відео: 12. Об`єкти в PHP
У рідкісних випадках буває потрібно створювати об`єкт по імені класу в PHP. Використовується це нечасто, але коли це потрібно, то дана можливість відмінно позначається і на продуктивності, і на кількості коду. Давайте з Вами розберемо, як створити об`єкт по імені класу, і я покажу приклад, де я особисто добре заощадив, використовуючи дану можливість в PHP.
Для початку відразу привожу код:
Відео: PHP Essential. Урок 1. Клас і Об`єкт
lt ;?php
$ class ="Point"-
$ obj =new $ class() -
?gt;
Після його виконання буде створено об`єкт класу Point. Здавалося б, навіщо це потрібно? Наводжу шматок коду з особистої практики (він сильно спрощений, але саму суть я залишив):
Відео: Урок 02. PHP - ООП. Клас (class). Властивості і методи класу
lt ;?php
$ view = $ _GET["View"] -
switch($ view){
case"Pagea":
$ content =newPageAContent($ db) -
break-
case"Pageb":
$ content =newPageBContent($ db) -
break-
case"Pagec":
$ content =newPageCContent($ db) -
break-
// Далі ще пару десятків подібного дублювання
?gt;
А ось тепер подивіться, як я скоротив код з використанням можливості створення об`єкта на ім`я класу в PHP:
lt ;?php
$ class = $ _GET["View"]."Content"-
$ content =new $ class() -
?gt;
Більш того, при додаванні нової ключової сторінки на сайт мені не треба знову лізти в цей файл і додавати 101-й блок.
Ось так, на перший погляд, марна можливість, відмінно допомогла оптимізувати роботу движка і спростила подальший супровід.
- Як отримати список дочірніх вузлів через dom
- Об`єкт number в jаvascript
- Switch case в jаvascript
- Абстрактні класи в php
- Метод tostring () в php
- Вивчаємо coffeescript. Класи.
- Функція __autoload в php
- Клас для відправки e-mail на php
- Об`єкт object в jаvascript
- Reflection api. Reflectionclass.
- Створення винятків в php
- Модифікатори доступу в php
- Статичні властивості і методи в php
- Клас для роботи з базою даних
- Поняття ооп в jаvascript
- Створення класу в php
- Reflection api. Reflectionobject.
- Reflection api. Reflectionmethod.
- Reflection api. Reflectionproperty.
- Створення движка на mvc. Допрацьовуємо роутер.
- Спадкування класів в php