Як створити об`єкт по імені класу в php

Відео: Основи ООП в 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Як отримати список дочірніх вузлів через dom
Клас для відправки e-mail на phpКлас для відправки e-mail на php
Об`єкт number в jаvascriptОб`єкт number в jаvascript
Створення движка на mvc. Допрацьовуємо роутер.Створення движка на mvc. Допрацьовуємо роутер.
Абстрактні класи в phpАбстрактні класи в php
Reflection api. Reflectionproperty.Reflection api. Reflectionproperty.
Функція __autoload в phpФункція __autoload в php
Метод tostring () в phpМетод tostring () в php
Reflection api. Reflectionclass.Reflection api. Reflectionclass.
Об`єкт object в jаvascriptОб`єкт object в jаvascript
» » Як створити об`єкт по імені класу в php