svn: /phpdoc/bg/trunk/language/control-structures/ include.xml

[email protected] (Stanislav Yordanov) Thu, 07 Jan 2016 13:03:06 +0000
Newsgroups php.doc.bg
Message-ID <[email protected]>
stanprog                                 Thu, 07 Jan 2016 13:03:06 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=338419

Log:
sync to EN

Changed paths:
    U   phpdoc/bg/trunk/language/control-structures/include.xml
svn-diffs-338419.txt (text/x-diff, 13.3 KB)
Modified: phpdoc/bg/trunk/language/control-structures/include.xml
===================================================================
--- phpdoc/bg/trunk/language/control-structures/include.xml	2016-01-07 00:28:31 UTC (rev 338418)
+++ phpdoc/bg/trunk/language/control-structures/include.xml	2016-01-07 13:03:06 UTC (rev 338419)
@@ -1,40 +1,48 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- $Revision$ -->
-<!-- EN-Revision: n/a Maintainer: kouber Status: ready -->
-
+<!-- EN-Revision: 337282 Maintainer: stanprog Status: ready -->
+<!-- Reviewed: no Maintainer: stanprog -->
+<!-- CREDITS: kouber -->
 <sect1 xml:id="function.include" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
- <title><function>include</function></title>
- <simpara>
+ <title>include</title>
+ <?phpdoc print-version-for="include"?>
+ <simpara>
   Инструкцията <function>include</function> включва и изпълнява даден файл.
  </simpara>
  <simpara>
-  Документацията по-долу се отнася също и за <function>require</function>.
-  Двете конструкции са идентични във всяко едно отношение, с изключение на начина, по който
-  обработват грешки. Те и двете предизвикват <link linkend="errorfunc.constants.errorlevels.e-warning">предупреждение</link>, но
-  <function>require</function> предизвиква също и <link linkend="errorfunc.constants.errorlevels.e-error">
-  фатална грешка</link>. С други думи, не се колебайте да използвате
-  <function>require</function> ако искате липсващ файл да спре изпълнението на скрипта.  <function>include</function> не се държи по този начин, скриптът ще продължи независимо
-  от липсата. Трябва също така да сте сигурни, че имате подходяща стойност за <link linkend="ini.include-path">include_path</link>.
-  Трябва да знаете, че грешка в синтаксиса на изисквания файл няма да предизвика
-  спиране на изпълнението във версии на PHP преди PHP 4.3.5. От тази версия нататък - ще го предизвика.
+  Документацията по-долу важи също и за <function>require</function>.
  </simpara>
  <simpara>
-  Файловете за включване се търсят първо в пътя за включване (include_path) относително спрямо
-  текущата работна директория, а след това - в директорията на
-  текущия скрипт. Например, ако пътят ви за включване е <literal>libraries</literal>, текущата
-  работна директория е <filename class="directory">/www/</filename>,
-  вие сте включили <filename>include/a.php</filename> и там има <literal>include "b.php"</literal>
-  в този файл, за <filename>b.php</filename> ще бъде търсено първо в <filename class="directory">/www/libraries/</filename>,
-  а после във <filename class="directory">/www/include/</filename>.
-  Ако името на файла започва с <literal>./</literal> или <literal>../</literal>, той ще бъде
-  потърсен само в текущата работна директория.
+  Файловете се включват на базата на предадения файлов път, а ако не е предаден,
+  на базата на <link linkend="ini.include-path">include_path</link>. Ако файлът
+  не бъде открит в <link linkend="ini.include-path">include_path</link>,
+  <literal>include</literal> ще провери в директорията на извикващия скрипт
+  и текущата директория преди да върне грешка. Контрукцията <literal>include</literal>
+  ще генерира <link linkend="errorfunc.constants.errorlevels.e-warning">предупреждение</link>,
+  ако не може да намери файла. Това е поведение е различно от поведението на <function>require</function>,
+  която ще генерира <link linkend="errorfunc.constants.errorlevels.e-error">фатална грешка</link>.
  </simpara>
+ <simpara>
+  Ако е указан път – независимо дали е абсолютен (започващ с име на устройство
+  или <literal>\</literal> при Уиндус или <literal>/</literal> в Юникс/Линукс
+  системи) или относителен спрямо текущата директория (започващ с
+  <literal>.</literal> или <literal>..</literal>) –
+  <link linkend="ini.include-path">include_path</link> ще бъде напълно
+  игнориран. Например, ако името на файл започва с <literal>../</literal>,
+  синтактичния анализатор ще търси в предходната директория за да намери заявения файл.
+ </simpara>
  <simpara>
-   Когато даден файл бива включван, кодът в него наследява <link linkend="language.variables.scope">областта на
-   действие на променливите</link> на реда, на който става включването. От този момент нататък, всяка променлива,
-   налична на този ред в извикващия файл ще бъде налична и в извиквания файл.
-   Всички функции и класове, дефинирани във включвания файл, ще имат глобална област на действие.
+  За повече информация относно това как PHP работи с файловете за включване и пътят за включване,
+  вижте документацията за <link linkend="ini.include-path">include_path</link>.
  </simpara>
+ <simpara>
+  Когато даден файл бива включван, кодът в него наследява
+  <link linkend="language.variables.scope">областта на  действие на променливите</link> на реда,
+  на който става включването. От този момент нататък, всяка променлива, налична на този ред
+  в извикващия файл ще бъде налична и в извиквания файл.
+  Всички функции и класове, дефинирани във включвания файл, ще имат
+  глобална област на действие.
+ </simpara>
  <para>
   <example>
    <title>Основен пример за <function>include</function></title>
@@ -59,8 +67,8 @@

 ?>
 ]]>
-    </programlisting>
-   </example>
+   </programlisting>
+  </example>
  </para>
  <simpara>
   Ако включването е вътре във функция в извикващия файл,
@@ -74,7 +82,7 @@
  </simpara>
  <para>
   <example>
-  <title>Включване във функции</title>
+   <title>Включване във функции</title>
    <programlisting role="php">
 <![CDATA[
 <?php
@@ -109,7 +117,7 @@
   валидни тагове за начало и край в PHP</link>.
  </simpara>
  <simpara>
-  Ако "<link linkend="ini.allow-url-fopen">опаковката URL fopen</link>"
+  Ако "<link linkend="ini.allow-url-include">опаковката URL include</link>"
   е включена в PHP (а тя е в конфигурацията по подразбиране),
   можете да укажете файла, който да бъде включен, посредством URL (през HTTP или
   друга поддържана опаковка - вижте <xref linkend="wrappers"/> за списък на
@@ -120,7 +128,6 @@
   родителския файл; всъщност скриптът се пуска на отдалечения сървър и резултатът
   чак тогава се включва в локалния скрипт.
  </simpara>
- &warn.no-win32-fopen-wrapper;
  <para>
   <example>
    <title><function>include</function> през HTTP</title>
@@ -166,16 +173,20 @@
  </warning>
  <para>
   Вж. също <link linkend="features.remote-files">Отдалечени файлове</link>,
-  <function>fopen</function> и <function>file</function> за информация по темата.
+  <function>fopen</function> и <function>file</function> за
+  информация по темата.
  </para>
  <simpara>
-  Обработка на връщания: Възможно е да се изпълни инструкция <function>return</function>
+  Обработка на връщания: <literal>include</literal> връща
+  <literal>FALSE</literal> при неуспех и генерира предупреждение. Успешното
+  включване, освен ако не е предефнирано от включения файл връща
+  <literal>1</literal>. Възможно е да се изпълни инструкция <function>return</function>
   във включван файл, за да се прекъсне изпълнението на този файл
   и да се предаде контролът към извикващия скрипт. Също така е възможно да се
   връщат стойности от включвани файлове. Можете да вземете стойността
   на включвания файл, както бихте го направили с нормална функция.
   Това обаче не е възможно, когато включвате отдалечени файлове, освен ако
-  отдалеченият файл има <link linkend="language.basic-syntax.phpmode">валидни тагове за
+  отдалеченият файл има <link linkend= "language.basic-syntax.phpmode">валидни тагове за
   начало и край в PHP</link> (както и за локални файлове). Можете да декларирате
   нужните променливи в тези тагове и те ще бъдат внесени в точката на
   включването.
@@ -189,13 +200,13 @@
    <programlisting role="php">
 <![CDATA[
 <?php
-// няма да работи, ще се изчисли като include(('vars.php') == 'OK'), т.е. include('')
-if (include('vars.php') == 'OK') {
+// няма да работи, ще се изчисли като include(('vars.php') == TRUE), т.е. include('')
+if (include('vars.php') == TRUE) {
   echo 'OK';
 }

 // работи
-if ((include 'vars.php') == 'OK') {
+if ((include 'vars.php') == TRUE) {
   echo 'OK';
 }
 ?>
@@ -206,7 +217,7 @@
  <para>
   <example>
    <title><function>include</function> и инструкцията <function>return</function></title>
-    <programlisting role="php">
+   <programlisting role="php">
 <![CDATA[
 return.php
 <?php
@@ -237,7 +248,7 @@

 ?>
 ]]>
-    </programlisting>
+   </programlisting>
   </example>
  </para>
  <simpara>
@@ -245,7 +256,7 @@
   е било успешно. Отбележете разликата в горните примери. Първият използва
   <function>return</function> във включвания файл, докато другият - не.
   В случай че файлът не може да бъде включен, ще бъде върната стойност &false;
-  и ще се изведе <literal>E_WARNING</literal>.
+  и ще се изведе <constant>E_WARNING</constant>.
  </simpara>
  <para>
   Ако има функции, дефинирани във включвания файл, то те могат да бъдат използвани в
@@ -263,7 +274,7 @@
  <para>
   <example>
    <title>Буфериране на изхода с цел включване на PHP файл в низ</title>
-    <programlisting role="php">
+   <programlisting role="php">
 <![CDATA[
 <?php
 $string = get_include_contents('somefile.php');
@@ -272,16 +283,14 @@
     if (is_file($filename)) {
         ob_start();
         include $filename;
-        $contents = ob_get_contents();
-        ob_end_clean();
-        return $contents;
+        return ob_get_clean();
     }
     return false;
 }

 ?>
 ]]>
-    </programlisting>
+   </programlisting>
   </example>
  </para>
  <para>
@@ -293,11 +302,11 @@
  </para>

  &note.language-construct;
-
+
  <simpara>
   Вж. също <function>require</function>, <function>require_once</function>,
-  <function>include_once</function>, <function>get_included_files</function>, <function>readfile</function>,
-  <function>virtual</function> и
+  <function>include_once</function>, <function>get_included_files</function>,
+  <function>readfile</function>, <function>virtual</function> и
   <link linkend="ini.include-path">include_path</link>.
  </simpara>
 </sect1>