Задать вопрос
inilim2
@inilim2
Intern PHP

Почему функция при возвращении обьекта ссылается на основной источник?

Разве функция get() не должна возвращать "копию" обьекта init::$i ?
<?php
Class init
{
	public static $i;
}

function initStatic ()
{
    init::$i = new stdClass;
    init::$i->param1 = 'val1';
    init::$i->param2 = 'val2';
    init::$i->param3 = 'val3';
}

function get ()
{
    return init::$i;
}

initStatic();

get()->param4 = 'val4';

print_r(init::$i);

А на деле функция возвращает еще и ссылку на источник.
stdClass Object
(
    [param1] => val1
    [param2] => val2
    [param3] => val3
    [param4] => val4
)
  • Вопрос задан
  • 71 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 1
В PHP объекты передаются и возвращаются по ссылке.
Дока
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы