tronic          Fri Dec 21 20:54:53 2001 EDT

  Modified files:              
    /phpdoc/ru/appendices       debugger.xml 
  Log:
  Minor translation fixups.
  
Index: phpdoc/ru/appendices/debugger.xml
diff -u /dev/null phpdoc/ru/appendices/debugger.xml:1.4
--- /dev/null   Fri Dec 21 20:54:53 2001
+++ phpdoc/ru/appendices/debugger.xml   Fri Dec 21 20:54:53 2001
@@ -0,0 +1,277 @@
+<?xml version="1.0" encoding="windows-1251"?>
+<!-- $Revision: 1.4 $ -->
+ <appendix id="debugger">
+  <title>Отлаживание PHP 3</title>
+
+  <sect1 id="debugger-about">
+   <title>Об отладчике</title>
+   <simpara>
+    В PHP 3 входит поддержка отладчика, основанного на сетевой технологии.
+   </simpara>
+   <simpara>
+    PHP 4 пока не обладает такой возможностью.
+   </simpara>
+  </sect1>
+
+  <sect1 id="debugger-using">
+   <title>Использование отладчика</title>
+
+   <para>
+    Внутренний отладчик PHP 3 бывает полезен для отслеживания
+    трудновыявляемых ошибок. Отладчик начинает работу по порту
+    <acronym>TCP</acronym> каждый раз во время запуска PHP 3.
+    Все сообщения об ошибках отсылаются через установленное
+    TCP-соединение.  Эта информация предназначена для
+    "отладочного сервера", который может быть запущен в
+    <acronym>IDE</acronym> или программируемом редакторе (например, Emacs).
+   </para>
+   <para>
+    Как настроить отладчик:
+    <orderedlist>
+     <listitem>
+      <simpara> 
+       Настройте TCP-порт отладчика в <link
+       linkend="configuration.file">файле конфигурации</link> (<link
+       linkend="ini.debugger.port">debugger.port</link>) и включите его
+       (<link linkend="ini.debugger.enabled">debugger.enabled</link>).
+      </simpara>
+     </listitem>
+     <listitem>
+      <simpara> 
+       Настройте на этот порт TCP listener (например,
+       <command>socket -l -s 1400</command> на платформе Unix).
+      </simpara>
+     </listitem>
+     <listitem>
+      <simpara> 
+       В вашем коде поместите вызов функции
+       "debugger_on(<replaceable>host</replaceable>)", где
+       <replaceable>host</replaceable> - IP или имя машины,
+       на которой запущен <acronym>TCP</acronym> listener.
+      </simpara>
+     </listitem>
+    </orderedlist>
+    Теперь все предупреждения, замечания и т.д. будут приниматься
+    сокетом listener'а, <emphasis>даже если вы отключили их вывод
+    функцией <function>error_reporting</function></emphasis>.  
+   </para>
+  </sect1>
+
+  <sect1 id="debugger-protocol">
+   <title>Протокол отладчика</title>
+   <para>
+    Протокол отладчика PHP 3 основан на строках. Каждая строка
+    имеет <emphasis>тип</emphasis>, а несколько строк образуют 
+    <emphasis>сообщение</emphasis>. Каждое сообщение начинается
+    строкой типа <literal>start</literal> и заканчивается строкой
+    типа <literal>end</literal>. PHP 3 может одновременно рассылать
+    строки для отдельных сообщений.
+   </para>
+   <para>
+    Строка имеет следующий формат:
+    <informalexample>
+     <literallayout>
+<replaceable>date</replaceable> <replaceable>time</replaceable>
+<replaceable>host</replaceable>(<replaceable>pid</replaceable>)
+<replaceable>type</replaceable>:
+<replaceable>message-data</replaceable>
+     </literallayout>
+    </informalexample>
+    <variablelist>
+     <varlistentry>
+      <term><replaceable>date</replaceable></term>
+      <listitem>
+       <simpara>
+        Дата в формате ISO 8601
+       
+(<replaceable>гггг</replaceable>-<replaceable>мм</replaceable>-<replaceable>дд</replaceable>)
+       </simpara>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term><replaceable>time</replaceable></term>
+      <listitem>
+       <simpara>Время с указанием микросекунд:
+       
+<replaceable>чч</replaceable>:<replaceable>мм</replaceable>:<replaceable>мкрсек</replaceable>
+       </simpara>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term><replaceable>host</replaceable></term>
+      <listitem>
+       <simpara>
+        Имя DNS или IP-адрес машины, где произошла ошибка выполнения
+        скрипта PHP 3.
+       </simpara>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term><replaceable>pid</replaceable></term>
+      <listitem>
+       <simpara>
+       PID (идентификатор процесса) скрипта на машине
+       <replaceable>host</replaceable>, где произошла ошибка при
+       выполнении скрипта PHP 3.
+       </simpara>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term><replaceable>type</replaceable></term>
+      <listitem>
+       <para>
+        Тип строки. Сообщает принимающей программе, как воспринимать
+        последующие данные:
+       <table>
+        <title>Типы строк отладчика</title>
+        <tgroup cols="2">
+         <thead>
+          <row>
+           <entry>Название</entry>
+           <entry>Обозначение</entry>
+          </row>
+         </thead>
+         <tbody>
+          <row>
+           <entry><literal>start</literal></entry> 
+           <entry>
+            Сообщает принимающей программе о начале сообщения
+            отладчика. Содержание <replaceable>data</replaceable>
+            будет интерпретировано как один из типов сообщения об ошибке,
+            перечисленных ниже.
+           </entry>
+          </row>
+          <row>
+           <entry><literal>message</literal></entry>
+           <entry>Сообщение об ошибке PHP 3.</entry>
+          </row>
+          <row>
+           <entry><literal>location</literal></entry>
+           <entry>
+            Имя файла и номер строки, где произошал ошибка.
+            Первая строка <literal>location</literal> всегда
+            будет содержать указание на верхний уровень.
+            <replaceable>data</replaceable> будет содержать
+            
+<literal><replaceable>file</replaceable>:<replaceable>line</replaceable></literal>.
+            После каждой строки <literal>function</literal> и 
+            строки <literal>message</literal> всегда будет
+            находиться строка <literal>location</literal>.
+           </entry>
+          </row>
+          <row>
+           <entry>
+            <literal>frames</literal></entry> <entry>Количество "frames"
+            (кадров) в последующем дампе стека. Например, если указано четыре
+            кадра, то следует ожидать информации о четырех уровнях
+            вызываемых функций. Если строка "frames" отсутствует,
+            глубина вложенности должна считаться нулевой (ошибка
+            произошла на верхнем уровне выполнения).
+           </entry>
+          </row>
+          <row>
+           <entry>
+            <literal>function</literal></entry> 
+           <entry>
+            Имя функции, в которой произошла ошибка. Строка
+            будет единожды повторяться для каждого уровня вложенности
+            в стеке вызова функции.
+           </entry>
+          </row>
+          <row>
+           <entry><literal>end</literal></entry> 
+           <entry>
+            Сообщает принимающей программе об окончании
+            сообщения отладчика.
+           </entry>
+          </row>
+         </tbody>
+        </tgroup>
+       </table>
+       </para>
+      </listitem>
+     </varlistentry>
+     <varlistentry>
+      <term><replaceable>data</replaceable></term>
+      <listitem>
+       <simpara>Строковые данные.</simpara>
+      </listitem>
+     </varlistentry>
+    </variablelist>
+
+    <table>
+     <title>Типы ошибок отладчика</title>
+     <tgroup cols="2">
+      <thead>
+       <row>
+       <entry>Отладчик</entry>
+       <entry>Внутреннее обозначение PHP 3</entry>
+       </row>
+      </thead>
+      <tbody>
+       <row>
+       <entry><errortype>warning</errortype></entry>
+       <entry><errortype>E_WARNING</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>error</errortype></entry>
+       <entry><errortype>E_ERROR</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>parse</errortype></entry>
+       <entry><errortype>E_PARSE</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>notice</errortype></entry>
+       <entry><errortype>E_NOTICE</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>core-error</errortype></entry>
+       <entry><errortype>E_CORE_ERROR</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>core-warning</errortype></entry>
+       <entry><errortype>E_CORE_WARNING</errortype></entry>
+       </row>
+       <row>
+       <entry><errortype>unknown</errortype></entry>
+       <entry>(любой другой)</entry>
+       </row>
+      </tbody>
+     </tgroup>
+    </table>
+    
+    <example>
+     <title>Пример сообщения отладчика</title>
+     <literallayout>
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) start: notice
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) message: Uninitialized variable
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: (&null;):7
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) frames: 1
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) function: display
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: 
+/home/ssb/public_html/test.php3:10
+1998-04-05 23:27:400966 lucifer.guardian.no(20481) end: notice
+     </literallayout>
+    </example>
+   </para>
+  </sect1>
+
+ </appendix>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->


Reply via email to