Size: a a a

2020 November 17

FL

First Last in phpGeeks
Kirill Nesmeyanov
у каких клиентов?
Клиент - код, который использует функцию, которая затирает его данные
источник

KN

Kirill Nesmeyanov in phpGeeks
function foo($a) { $a = 23; }

$value = new Some();
foo($value);

var_dump($value); // Это не int(23), а object(Some)
источник

KN

Kirill Nesmeyanov in phpGeeks
только если явно указать ссылку, тогда и будут изменения
источник

FL

First Last in phpGeeks
Я про изменения внутри объекта который передали
источник

FL

First Last in phpGeeks
class Foo {
   public int $a = 2;
}

function test(Foo $foo): void {
   $foo->a = 23;
}

$foo = new Foo;
echo $foo->a; // 2
test($foo);
echo $foo->a; // 23
источник

KN

Kirill Nesmeyanov in phpGeeks
это как раз и называется передачей по адресу (по указателю)
источник

FL

First Last in phpGeeks
Я ведь тебе уже выше сказал: для пхпшников это "объекты передаются по ссылке"
источник

KN

Kirill Nesmeyanov in phpGeeks
потому что передача объекта по ссылке ведёт себя иначе
источник

FL

First Last in phpGeeks
Я уверен, большая часть чата не знает как передаются притимивы и почему не примитивы не кло....
источник

FL

First Last in phpGeeks
А ты рассказываешь за ручное управление памятью, указатели и прочее
источник

KN

Kirill Nesmeyanov in phpGeeks
большая часть чата считают что в пхп есть свойства у классов/объектов, хотя их как бы нет
источник

KN

Kirill Nesmeyanov in phpGeeks
но на это пофигу, просто потому что в пыхе нет свойств и сразу понятно что имеются ввиду поля
источник

KN

Kirill Nesmeyanov in phpGeeks
а тут ситуация другая
источник

FL

First Last in phpGeeks
Вот ты скажи
На кой ляд пхпшнику знать про какие-то указатели, разыменования их и прочюю лебурду? Когда они знают "если я могу изменить и у клиента изменится - значит это по ссылке"
источник

FL

First Last in phpGeeks
Я ж говорю: я уверен, большая половина пхпшников не знают как передаются примитивы и не примитивы
И почему именно так
источник

KN

Kirill Nesmeyanov in phpGeeks
да потому что передача объектов по ссылке - это самый популярный кейс хот релоада наверное, не?
источник

KN

Kirill Nesmeyanov in phpGeeks
есть демон, кидаешь в него сигнал включить логгер
источник

KN

Kirill Nesmeyanov in phpGeeks
если логгер по ссылке передаётся, то он сразу меняется везде, во всём коде по той же ссылке
источник

FL

First Last in phpGeeks
Kirill Nesmeyanov
да потому что передача объектов по ссылке - это самый популярный кейс хот релоада наверное, не?
Хот релоада где, в пхп?
источник

KN

Kirill Nesmeyanov in phpGeeks
ну да
источник