Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
}
}
function changeName($person, $name) {
$foo->setName($name);
}
$person = new foo("Bill");
changeName($person, "John");
print $person->getName();
?>
В РНР 4 этот код выведет «Bill». Дело в том, что мы передаем объект $person в функцию changeName() по значению, а не по ссылке, таким образом, объект $person будет скопирован, и changeName() будет работать уже с копией объекта $person.
В PHP 5 объектная модель была полностью переписана, и работа теперь осуществляется с указателями на объект. Нет необходимости явно передавать объекты или присваивать их по ссылке, всё происходит автоматически. Впрочем, явная передача и присваивание по ссылке также поддерживается, более того, введён новый метод _clone(), который можно использовать, в случае если возникает необходимость клонировать объект.
<?
class foo {
function __clone() {
print "Cloned!";
}
}
$obj =new foo();
clone $obj;