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

О проекте

Инструкция по обновлению PHP-Fusion SF
Последние посетители
Andreasrqe 1 день
Andreasyoe 4 дней
Andreasgzi 4 дней
Sky 2 недель
MyDoors2018 5 недель
DrovlesWonam 7 недель
Andreaselx 10 недель
agrohimwmm 12 недель
Servicemsk 14 недель
Servicezgo 14 недель
RSS канал
Темы оформления
Все загружено тем: 331
Самая популярная тема: Milky Way Theme
Количество загрузок этой темы: 1686
milkyway_t1.jpg
 
Новая тема: Fiestafm.lt
fiestafm.lt_t1.png
Количество загрузок этой темы: 5
Дата последнего обновления: 11 Июля 2012, 20:28:02
Темы форума
Новые темы
Взлом сайтов - панели
SF батл - Собрание в...
Сайт как решето, пом...
Покоцать редактор ti...
Регистрация ботов ил...
Обсуждаемые темы
Вопрос/Ответ для ... [257]
Плагин видео ката... [214]
MP3 Архив v. 2.0 [211]
Обмен [207]
инет-магаз [149]
PHP 5 - клонирование объектов
Итак, в PHP 5 объекты передаются по ссылке. Однако, если же необходимо провести именно копирование объекта, как это делалось в PHP 4, то в PHP 5 придется явно использовать новый метод __clone(). При этом объект копируется со всеми своими методами, свойствами и их значениями:

class MyClass{
var $property;
}
$obj1 = new MyClass;
$obj1->property = 1;
$obj2 = clone $obj1;
echo $obj1->property; // Выводит 1
echo $obj2->property; // Выводит 1
$obj2->property = 2;
echo $obj2->property; // Выводит 2
?>

Следует обратить внимание на то, что к методу __clone() нельзя обратиться непосредственно и для копирования объекта используется ключевое слово clone.

Метод __clone() необязательно описывать в самом классе, однако его явное определение, т.е. перегрузка, позволит изменить значения свойств копируемого объекта:

class MyClass{
var $property;
function __clone() {
$this->property = 2;
}
}
$obj1 = new MyClass;
$obj1->property = 1;
$obj2 = clone $obj1;
echo $obj1->property; // Выводит 1
echo $obj2->property; // Выводит 2
?>

Метод __clone() не может принимать никакие аргументы, однако позволяет обратиться к исходному объекту через указатель $this и получаемому в результате копирования объекту через указатель $that.
Опубликовал snake_oriental 20 Июля 2008, 08:14:26 · 0 Комментариев · 25602 Прочтений · Для печати
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

Нет данных для оценки.
Для вас
Это интересно
Актуальная версия
PHP-Fusion 6.01.19.4
Логин
Имя

Пароль



Забыли пароль?
Запросите новый здесь.
Помощь/благодарность проекту


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

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

Код внутри
рекомендуем посетить