Помогите понять...

Статус
В этой теме нельзя размещать новые ответы.

sashalg

Читатель
Заблокирован
Регистрация
21 Мар 2008
Сообщения
49
Реакции
7
  • Автор темы
  • Заблокирован
  • #1
Тут как то рылся в скриптах и наткнулся на такие записи:

функция()->функция()->функция('tra-ta-ta');

Что означает и для чего такая реализация.
 
Тут как то рылся в скриптах и наткнулся на такие записи:

функция()->функция()->функция('tra-ta-ta');

Что означает и для чего такая реализация.

Читаем про ООП и классы
Для просмотра ссылки Войди или Зарегистрируйся Для просмотра ссылки Войди или Зарегистрируйся
 
  • Автор темы
  • Заблокирован
  • #3
Вот только не надо меня кормить доками. Я пишу классами уже давно, но вот такую запись встретил первый раз.
 
Вот только не надо меня кормить доками. Я пишу классами уже давно, но вот такую запись встретил первый раз.
Я могу конечно ошибатся, но такой тип наследования поддерживат только PHP 5
 
  • Автор темы
  • Заблокирован
  • #5
Я могу конечно ошибаться, но такой тип наследования поддерживат только PHP 5

Ну да. Ковыряю Zend Wramework и никак не пойму принцип такой записи... и как это реализовано... и вообще зачем это.

я могу понять такую запись как: $a->b->c(); или $a->b->c = 10;
но я никак не могу понять вот такое: $a->b()->c()->d('hello'); или a()->b()->c('hello');

Вот и решил поинтересоваться у знающих людей. Может я для себя америку открою!
 
Ну да. Ковыряю Zend Wramework и никак не пойму принцип такой записи... и как это реализовано... и вообще зачем это.

я могу понять такую запись как: $a->b->c(); или $a->b->c = 10;
но я никак не могу понять вот такое: $a->b()->c()->d('hello'); или a()->b()->c('hello');

Вот и решил поинтересоваться у знающих людей. Может я для себя америку открою!

Второй тип более гибкий... как раз то что нужно FrameWork'ку.

При
$a->b()->c()->d('hello');
Вы можете поменять условия еще b() и c(), что в конечном итоге все это повлияет на d('hello');.
 
  • Автор темы
  • Заблокирован
  • #7
Аааа. То есть по русски говоря я могу инициировать определённую последовательность классов и получить конечный результат по результату инициированных предшественников. Я правильно понял?
 
типа того.
рассмотрим на примере:
PHP:
echo $XPath->query('//a/@href')->item(0)->value;
PHP:
$DOMNodeList_a_href=$XPath->query('//a/@href');
$first_a_href=$DOMNodeList_a_href->item(0);
echo $first_a_href->value;
как видим результат вовращаемый каждой из функцией, представляет собой объект.И мы не обязаны сохранять его в темповую переменую, если он нам нужен только для одного действия, а можем сразу вызвать необходимый нам метод у него
 
$a->b()->c()->d('hello') используется для передачи объекта по цепочке.
 
Помогите плиз. Хотел тему открыть - не дает, гад, форум)))

Вообщем, скрипт - дле. Хочу туда инклудить файл php с другого сайта(сервера), не получается, ошибку выадет скрипт. Где-то прочитал, что это не дает сделать настройка сервера. Так и не понял, где и что нужно менять, на php.ini или апач надо копать?
Кстати, не получается и rss сделать. Помогите, плиз! :)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху