PHP-Fusion SF Russian Support Site
Навигация
Главная
Статьи
Загрузка файлов
FAQ
Полезные ссылки
Форум
Загрузка тем оформления
Поиск

О проекте

Инструкция по обновлению PHP-Fusion SF
Последние посетители
Ronchoom 00:49:19
AlisaMecy 01:38:08
gargola63k 04:58:54
mamuka89-872 07:16:14
ycyqi 07:35:32
SusloparoFF 12:20:13
vovan6222 12:27:06
merenesti2 13:05:06
Helenavia 14:47:39
rodrigesr... 15:39:28
RSS канал
Темы оформления
Все загружено тем: 331
Самая популярная тема: Milky Way Theme
Количество загрузок этой темы: 1686
milkyway_t1.jpg
 
Новая тема: Fiestafm.lt
fiestafm.lt_t1.png
Количество загрузок этой темы: 5
Дата последнего обновления: 11 Июля 2012, 19:28:02

PHP 5 - конструкторы и деструкторы
В PHP 5 введены конструкторы и деструкторы.

Метод-конструктор вызывается автоматически при каждом создании объекта. И хотя конструктор появился в PHP давно (эту роль выполнял метод, названный именем класса), но в PHP 5 была изменена схема именования конструктора - метод __construct() является теперь конструктором класса.

Аналогично, при уничтожении объекта вызывается специальный метод __destruct() – деструктор класса.

class MyClass {
function __construct() {
echo "Запущен конструктор";
}
function __destruct() {
echo "Запущен деструктор";
}
}
$obj = new MyClass(); // Выводит "Запущен конструктор"
unset($obj); // Выводит "Запущен деструктор"
?>

Если же необходимо вызвать конструктор или деструктор базового класса, то необходимо это делать явно, через указатель parent.

class MyClass {
function __construct() {
echo "Запущен конструктор базового класса";
}
function __destruct() {
echo "Запущен деструктор базового класса";
}
}
class MyClass1 extends MyClass {
function __construct() {
parent::__construct();
}
function __destruct() {
parent::__destruct();
}
}
$obj = new MyClass1(); // Выводит "Запущен конструктор
// базового класса"
unset($obj); // Выводит "Запущен деструктор базового класса"
?>

Для целей совместимости с предыдущей версией PHP 5 поступает следующем образом: если при создании объекта в классе не найдет конструктор __construct(), то PHP пытается выполнить метод, имя которого совпадает с именем класса. Т.о. конструкторы PHP 4 будут работать с PHP 5 без каких-либо изменений кода.
Опубликовал snake_oriental 20 Июля 2008, 07:18:51 · 1 Комментариев · 34456 Прочтений · Для печати
Комментарии
;) 12 Мая 2009, 16:15:22
smiley
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Отлично! Отлично! 100% [1 Голос]
Очень хорошо Очень хорошо 0% [Нет голосов]
Хорошо Хорошо 0% [Нет голосов]
Удовлетворительно Удовлетворительно 0% [Нет голосов]
Плохо Плохо 0% [Нет голосов]
Для вас
полиграф при расследовании преступлений
Это интересно
Актуальная версия
PHP-Fusion 6.01.19.4
Логин
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.

Zomoro.com

Помощь/благодарность проекту


Z275115146629
R120645282232
E215148775742
Наша кнопка
Если вам захочется установить у себя нашу кнопку, мы будем Вам благодарны.

Сайт поддержки модифицированного PHP-Fusion

Код внутри
Возможно вас заинтересует
рекомендуем посетить