Alex
а
Alex
стоп
(;¬_¬)
это вообще не то
Alex
я знаю че он хочет
(;¬_¬)
это для замыканий
Alex
он про замыкания говорит явно
(;¬_¬)
ну я надеюсь что он знает
Alex
просто $this надо передать в замыкания
SarcasmIO
(;¬_¬)
ну с большой натяжкой это может быть замыкание, но....
Alex
или там жесткий говнокод)
(;¬_¬)
Alex
class Foo {
public function name() {
$this->someFunction();
function secondOne() {
echo $this;
}
}
}
Alex
вот так походу
Alex
но это страшно)
SarcasmIO
class Any extends Another {
}
$result = (function() {
return $this->AnotherProperty;
})-call(new Another());
(;¬_¬)
а вдруг у него __tostring где-то запрятан
SarcasmIO
class Any extends another {
}
$result = (function() {
return $this->some;
})-call(new Any());
SarcasmIO
вот так точно не будет
Alex
он там в другом чатике скрин скинул
Alex
там замыкания
Alex
SarcasmIO
биндит скоуп видимости кложи
SarcasmIO
к другому класу
Alex
вот его код
SarcasmIO
Any наследует жи
Varyen
есть способ одним махом склонировать объект / массив с референсами где-то глубоко внутри, чтобы они все стали копиями?
SarcasmIO
Varyen
там довольно глубоко вложенная структура, и внутри примитивы уже
SarcasmIO
(;¬_¬)
(;¬_¬)
Varyen
Varyen
короче, есть объект. внутри него куча всего (кеш, другие объекты, вложенность произвольная). Я его посередине скрипта передаю на сериализацию
Varyen
мне нужно чтобы внутри там не было ссылок друг на друга
SarcasmIO
это концепт
SarcasmIO
ты можешь ебнуть туда метод
SarcasmIO
или прибиндить к чему угодно
SarcasmIO
но это работает именно так
Varyen
иначе либо при десериализации все рухнет, либо сразу после этого часть вложенных переменных попортится
Varyen
т. к. при сериализации я их "упрощаю"
SarcasmIO
class Any {
private $some = 23;
}
$result = (function() {
return $this->some;
})-call(new Any());
так можно прибиндить к классу
(;¬_¬)
SarcasmIO
выше можно было прибиндить к методу, который позовет parent::$some
(;¬_¬)
там тоже есть волшебные методы
Varyen
а мне им потом еще пользоваться дальше надо еще какое-то время до окончания процесса
SarcasmIO
я не соображаю
SarcasmIO
я устал
SarcasmIO
что бы ты не завязывался на реализацию
SarcasmIO
и мог подменить в случае чего
SarcasmIO
лисков все дела
Alex
что то я потерял нить разговора
SarcasmIO
все зависит от того что делает твой сервис
SarcasmIO
любой сервис это дерьмо
SarcasmIO
которое с 90% вероятностью
SarcasmIO
будет инжектится по всему проекту
SarcasmIO
и что бы соблюсти coupling/cohesion
SarcasmIO
и SRP
SarcasmIO
их нужно изначально норм декомпозировать
SarcasmIO
а то по большому счету похуй как ты его называешь если это good object
Varyen
короче. на самом деле мне было бы достаточно определить ссылка у меня или обычная переменная, самое близкое что нашел - https://stackoverflow.com/questions/3148125/php-check-if-object-array-is-a-reference
SarcasmIO
это может быть и стратегия
SarcasmIO
хз
Varyen
но это как-то через жопу и не факт что мне подойдет
SarcasmIO
спать охота
SarcasmIO
SarcasmIO
просто прими факт
Alex
генерикииии
Alex
дайте мне генерикиии
Alex
минуточку
Alex
откуда тут ен пышный код?)
Varyen
тебе нужны дженерики
я задолбаюсь это переделывать, на уровне где все может поломаттся массив со ссылками на строки. И я эти строки, например, обрезаю до сотни символов, сериализую. а вот после этого они мне нужны в нормальном виде :(
Varyen
и в том же объекте
Alex
не напоминай. у меня приступ паники начинается из-за этого(
Vadim
Alex
работают
Alex
пока не могут определится со спекой
Alex
это не для статической типизации даже толком