<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>NPJ next - RequestHandler</title>
<link>http://www.collabs.ru/RequestHandler</link>
<description>History/revisions of NPJ next/RequestHandler</description>
<language>en-us</language>
<item>
<title>2008-02-03 01:29:31</title>
<link>http://www.collabs.ru/RequestHandler/show?time=2008-02-03+01%3A29%3A31</link>
<description>&lt;div class="pageBefore">&lt;img src="http://www.collabs.ru/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a name=".requesthandler" href="http://www.collabs.ru/RequestHandler" class="">/Request&amp;nbsp;Handler&lt;/a> за &lt;a href="http://www.collabs.ru/RequestHandler?time=2008-02-03+01%3A29%3A31">2008-02-03 01:29:31&lt;/a> и &lt;a href="http://www.collabs.ru/RequestHandler">2008-02-03 15:12:31&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Моего пера: &lt;a name="requesthandlerdetails" href="http://www.collabs.ru/RequestHandlerDetails" class="" title="Request&amp;nbsp;Handler&amp;nbsp;Details">$rh &amp;ndash; детали реализации&lt;/a>.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Моего пера: &lt;a name="requesthandler" href="http://www.collabs.ru/RequestHandler" class="" title="Request&amp;nbsp;Handler">$rh &amp;ndash; детали реализации&lt;/a>.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2008-02-03 00:19:23</title>
<link>http://www.collabs.ru/RequestHandler/show?time=2008-02-03+00%3A19%3A23</link>
<description>&lt;div class="pageBefore">&lt;img src="http://www.collabs.ru/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://www.collabs.ru/RequestHandler" class="">/Request&amp;nbsp;Handler&lt;/a> за &lt;a href="http://www.collabs.ru/RequestHandler?time=2008-02-03+00%3A19%3A23">2008-02-03 00:19:23&lt;/a> и &lt;a href="http://www.collabs.ru/RequestHandler?time=2008-02-03+01%3A29%3A31">2008-02-03 01:29:31&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Моего пера: &lt;a  href="http://www.collabs.ru/RequestHandler" class="" title="Request&amp;nbsp;Handler">$rh &amp;ndash; детали реализации&lt;/a>.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Моего пера: &lt;a href="http://ahe.org.ru/vtqveant/npj/rh" target="_blank" title="Внешняя ссылка (откроется в новом окне)" class="outerlink">&lt;img src="http://www.collabs.ru/themes/canary/icons/web.gif" alt="" border="0" />$rh &amp;ndash; детали реализации&lt;/a>.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2008-02-03 00:12:57</title>
<link>http://www.collabs.ru/RequestHandler/show?time=2008-02-03+00%3A12%3A57</link>
<description>&lt;div class="pageBefore">&lt;img src="http://www.collabs.ru/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://www.collabs.ru/RequestHandler" class="">/Request&amp;nbsp;Handler&lt;/a> за &lt;a href="http://www.collabs.ru/RequestHandler?time=2008-02-03+00%3A12%3A57">2008-02-03 00:12:57&lt;/a> и &lt;a href="http://www.collabs.ru/RequestHandler?time=2008-02-03+00%3A19%3A23">2008-02-03 00:19:23&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">||САМЫЙ ГЛАВНЫЙ ОБЪЕКТ В&amp;nbsp;НПЖ называется $rh, класс ~NpjRequestHandler||&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">||Перед тем, как&amp;nbsp;читать дальше, попробуйте ответить на&amp;nbsp;простой вопрос: как&amp;nbsp;называется САМЫЙ ГЛАВНЫЙ ОБЪЕКТ В&amp;nbsp;НПЖ? ||&lt;a name="h22-1">&lt;/a>&lt;h3>&amp;laquo;Обертка&amp;raquo;: index.php&lt;/h3>
1) при&amp;nbsp;вызове &lt;strong>index.php&lt;/strong> первой вызывается функция &lt;strong>ob_start()&lt;/strong>, которая отключает вывод в&amp;nbsp;&lt;strong>stdout&lt;/strong> (он обрабатывается с&amp;nbsp;помощью функции &lt;strong>ob_gzhandler()&lt;/strong>)&lt;br />
2) подключаются классы&lt;br />
&lt;ul>&lt;li> &lt;strong>core/classes/RSS.php&lt;/strong>
&lt;/li>&lt;li> &lt;strong>npj/classes/NpjRSS.php&lt;/strong>
&lt;/li>&lt;li> &lt;strong>core/classes/Debug.php&lt;/strong>
&lt;/li>&lt;li> &lt;strong>core/classes/RequestHandler.php&lt;/strong>
&lt;/li>&lt;li> &lt;strong>npj/classes/NpjRequestHandler.php&lt;/strong>&lt;/li>&lt;/ul>
3) создаются объекты (перечисляю самые важные)&lt;br />
&lt;ul>&lt;li> &lt;strong>$rss&lt;/strong> &amp;ndash; объект класса &lt;strong>NpjRSS&lt;/strong>
&lt;/li>&lt;li> &lt;strong>$dbg&lt;/strong> &amp;ndash; объект класса &lt;strong>Debug&lt;/strong>
&lt;/li>&lt;li> &lt;strong>$rh&lt;/strong> &amp;ndash; объект класса &lt;strong>NpjRequestHandler&lt;/strong>. Он&amp;nbsp;разбирает URL&amp;nbsp;(который трактуется как&amp;nbsp;команда) и&amp;nbsp;берет на&amp;nbsp;себя взаимодействие с&amp;nbsp;сервером. Вся&amp;nbsp;дальнейшая работа с&amp;nbsp;НПЖ будет протекать в&amp;nbsp;зоне видимости и&amp;nbsp;с помощью методов этого объекта.&lt;/li>&lt;/ul>
4) Вызывается метод &lt;strong>HandleRequest()&lt;/strong> объекта &lt;strong>$rh&lt;/strong>, результат работы которого выводится в&amp;nbsp;броузер с&amp;nbsp;помощью &lt;strong>$rh-&amp;gt;Output($rh-&amp;gt;HandleRequest( ));&lt;/strong> Класс &lt;strong>Debug&lt;/strong> (и, соответственно, его&amp;nbsp;экземпляр &lt;strong>$dbg&lt;/strong>) обеспечивает запись лога всех действий НПЖ&amp;nbsp;(который при&amp;nbsp;нормальной работе никуда не&amp;nbsp;выводится).&lt;br />
5) В&amp;nbsp;случае ошибки управление передается снова в&amp;nbsp;&lt;strong>index.php&lt;/strong> и&amp;nbsp;вызывается метод &lt;strong>$rh-&amp;gt;End();&lt;/strong>&lt;br />
6) Вызывается &lt;strong>ob_end_flush()&lt;/strong>, что&amp;nbsp;сбрасывает в&amp;nbsp;&lt;strong>stdout&lt;/strong> лог&amp;nbsp;произошедшего, хранящийся в&amp;nbsp;объекте &lt;strong>$dbg&lt;/strong>.&lt;br />
||Итак, САМЫЙ ГЛАВНЫЙ ОБЪЕКТ В&amp;nbsp;НПЖ называется $rh, класс ~NpjRequestHandler||&lt;/div>&lt;/div>
</description>
</item>
</channel>
</rss>

