чтобы писать в таком синтаксисе, каждый метод должен возвращать this, ну кроме последнего, если он какой-то выводящий или запускающий.
А что если сделать так, чтобы в каждом методе не прописывать this и не зависеть от последовательности вызовов, то есть, в случае, если каждый метод возвращал this, то:
var_dump($app->one());// результат функции, например будет строка, а не возврат this, как выше
var_dump($app->one()->two());// ага, теперь one понимает, что он должен отработать, а также вернуть this(чего он не делал во второй строчке), чтобы запустился two. Далее two смотрит, если за ним идет three, то кроме отработки он вернет this и т.д по всей цепочке.
нет, вообще не то )
мне кажется в моем первом посте самое понятное объяснение.
===
вот как $app->one() поймет, идет за ним в стеке вызовов ещё один метод или он один в цепочке?
может на англ.яз будет понятливее,..из той ссылки, что я выше указал:
Цитата:
For instance, if I was to:
$Class->someFunction()->anotherFunction();
In anotherFunction() I can know what previous function was called using debug_backtrace(), but in my case, how can I know from someFunction() that anotherFunction() is going to be called next ? Is this possible in PHP ?
неее )
меня не интересует есть метод или нет, мне нужно знать, находится ли он в цепочке.
Ну я думаю и так понятно что я имею в виду, но все же, ещё немного уточню:
$app->one() -- оппа...я один значит верну только результат
$app->one()->two() -- оппа я не один, значит я не только отработаю, но и верну this
итд
Это получается тот же шаблон Билдер, но только там каждая функция возвращает this, а я хочу это контролировать.
Метод one, знает что за ним есть ещё метод two, а метод two, знает о существовании three
Ну или на крайняк, хотябы узнать кол-во методов в цепочке.
=====
Не я один тут ищу ответ на этот вопрос ) но автору так никто и не ответил: https://stackoverflow[dot]com/questi[dot][dot][dot]xt-function-name
существует довольно-таки большой массив(на 4000 значений).
Есть ли разница между тем поместить его в сессию или в созданный мной файл?
Сессия это тот же самый файл на серваке и каждый раз обращаясь к $_SESSION, PHP производит такую же самую процедуру считывания и записывания, как с обыкновенного файла. Правильно?
1) Тогда получается, что по производительности(чтение/запись) они одинаковы?
2) В каком формате хранятся данные в сессии? Сериализовано? Если да, то получается затрата на сериализация и десериализацию?
это вы пошутили?
======
речь шла о выведении значения массива внутри двойных кавычек, а не о простом выводе через echo.
======
Я припоминал, что там дело в хитром синтаксисе, но поскольку давно с этим не сталкивался, то подзапамятовал, а сейчас вспомнил.
Вообщем для всех тех, кто согласился с ответом Строителя, а также для самого Строителя, поясняю:
если массив безымянный, то в двойных кавычках это будет записываться так:
<meta http-equiv="pics-label" content='(pics-1.1"http://www.icra.org/pics/vocabularyv03/" l gen truefor"http://xe.com" r (n 0 s 0 v 0 l 0 oa 0 ob 0 oc 0 od 0 oe 0 of 0 og 0 oh 0 c 0)'... (length=57716)
Почему оставшиеся 57716 символов нет в коде страницы? Может есть какая-то настройка по ограничению закачиваемых байт?
Спасибо.