parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

mashi 06.02.2006 11:38

Если весь сайт построен на файлах, а один из разделов работаем с RewriteMod-ом — удобно. Например новости: раздел /news/, а Rewrite-ом обрабатываем /news/2006/02/06/, в таком случае класс uri начинает искать страницу с полным адресом и, не найдя, вываливается в ошибку. Можно, конечно, обрабатывать эту ошибку в вызывающем методе, но мне кажется более удобным внести эту проверку в класс, на случай неоднократного использования
В таком случае в дереве надо хранить соответствующие объекты, что бы их полный uri получался "/news/2006/02/06/".

Представте ситуацию, когда абсолютно все (начиная с корня) запросы обрабатываются RewriteMod. Когда, допустим, приходит запрос вида:

http://site.ua/ru/presscentre/news/2006/02/06/

а реально все передается на /
Тогда методу, о котором идет реч, прийдется не сладко.


* * *
По поводу @get_uri[id]
…а вот если структура будет храниться в базе — очень даже поможет этот метод
Представте что у вас есть глобальный хеш $OBJECT, построенный на основе таблички item. Зачем нужен метод @get_uri[id], если можно просто написать $OBJECT.[$id].uri и получить полный uri объекта или $OBJECT.[$id].title и получить заголовок.