svn: /phpdoc/ru/trunk/ language/oop5/basic.xml language/types/float.xml language/types/integer.xml language/types/string.xml language/types/type-juggling.xml language/types.xml reference/math/functions/round.xml reference/opcache/ini.xml reference/var/functions/is-numeric.xml

[email protected] (Sergey Panteleev) Sat, 28 Nov 2020 08:07:24 +0000
Newsgroups php.doc.ru
Message-ID <[email protected]>
sergey                                   Sat, 28 Nov 2020 08:07:24 +0000

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

Log:
docs(ru): Updated to English revision

Changed paths:
    U   phpdoc/ru/trunk/language/oop5/basic.xml
    U   phpdoc/ru/trunk/language/types/float.xml
    U   phpdoc/ru/trunk/language/types/integer.xml
    U   phpdoc/ru/trunk/language/types/string.xml
    U   phpdoc/ru/trunk/language/types/type-juggling.xml
    U   phpdoc/ru/trunk/language/types.xml
    U   phpdoc/ru/trunk/reference/math/functions/round.xml
    U   phpdoc/ru/trunk/reference/opcache/ini.xml
    U   phpdoc/ru/trunk/reference/var/functions/is-numeric.xml
svn-diffs-351720.txt (text/x-diff, 19.1 KB)
Modified: phpdoc/ru/trunk/language/oop5/basic.xml
===================================================================
--- phpdoc/ru/trunk/language/oop5/basic.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/oop5/basic.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- $Revision$ -->
-<!-- EN-Revision: 350429 Maintainer: sergey Status: ready -->
+<!-- EN-Revision: 351711 Maintainer: sergey Status: ready -->
 <!-- Reviewed: no -->

 <sect1 xml:id="language.oop5.basic" xmlns="http://docbook.org/ns/docbook">
@@ -405,7 +405,7 @@
   <title>::class</title>

   <para>
-   Начиная с PHP 5.5 можно использовать ключевое слово <literal>class</literal>
+   Ключевое слово <literal>class</literal> используется
    для разрешения имени класса. С помощью конструкции <literal>ClassName::class</literal>
    можно получить строку с абсолютным именем класса <literal>ClassName</literal>.
    Обычно это довольно полезно при работе с классами, использующими
@@ -440,7 +440,49 @@
      автозагрузки класса не происходит. Как следствие, имена классов раскрываются, даже
      если класс не существует. Ошибка в этом случае не выдается.
     </para>
+    <example xml:id="language.oop5.basic.class.class.fail">
+     <title>Отсутствует разрешение имени класса</title>
+     <programlisting role="php">
+<![CDATA[
+<?php
+print Some\Class\DoesNot\Exist::class;
+?>
+]]>
+     </programlisting>
+     &example.outputs;
+     <screen>
+<![CDATA[
+Some\Class\Does\Not\Exist
+]]>
+     </screen>
+    </example>
    </note>
+  <para>
+   Начиная с PHP 8.0.0, константа <literal>::class</literal> также может использоваться
+   для объектов. Это разрешение происходит во время выполнения, а не во время компиляции.
+   Тоже самое, что и при вызове <function>get_class</function> для объекта.
+   </para>
+   <example xml:id="language.oop5.basic.class.class.object">
+    <title>Разрешение имени объекта</title>
+    <programlisting role="php">
+<![CDATA[
+<?php
+namespace NS {
+    class ClassName {
+    }
+}
+$c = new ClassName();
+print $c::class;
+?>
+]]>
+    </programlisting>
+    &example.outputs;
+    <screen>
+<![CDATA[
+NS\ClassName
+]]>
+    </screen>
+   </example>
  </sect2>
 </sect1>


Modified: phpdoc/ru/trunk/language/types/float.xml
===================================================================
--- phpdoc/ru/trunk/language/types/float.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/types/float.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 351133 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <sect1 xml:id="language.types.float" xmlns:xlink="http://www.w3.org/1999/xlink">
@@ -87,21 +87,35 @@
  <sect2 xml:id="language.types.float.casting">
   <title>Преобразование в число с плавающей запятой</title>

-  <para>
-   Информацию о преобразовании строк в числа с плавающей запятой смотрите в разделе
-   <link linkend="language.types.string.conversion">Преобразование строк в числа</link>.
-   Для значений других типов преобразование будет сначала осуществлено в
-   тип <type>int</type>, а затем в число с плавающей запятой.
-   Дополнительную информацию смотрите в разделе
-   <link linkend="language.types.integer.casting">Преобразование к целому</link>.
-  </para>
-
-  <note>
+  <sect3 xml:id="language.types.float.casting.from-string">
+   <title>Из строк</title>
+
+   <simpara>
+    Если строка
+    <link linkend="language.types.numeric-strings">содержащая число</link>
+    или ведущая числовая, тогда она будет преобразована в соответствующее целочисленное значение,
+    в противном случае она преобразуется в ноль
+    (<literal>0</literal>).
+   </simpara>
+  </sect3>
+
+  <sect3 xml:id="language.types.float.casting.from-other">
+   <title>Из других типов</title>
+
    <para>
-    Выдается замечание об ошибке, если объект (<type>object</type>) конвертируется в число с плавающей запятой (<type>float</type>).
+    Для значений других типов преобразование выполняется путем преобразования значения сначала в целое число (<type>int</type>), а затем в число с плавающей запятой (<type> float </type>).
+    Смотрите <link linkend="language.types.integer.casting">Преобразование в целое число</link> для получения
+    дополнительной информации.
    </para>
-  </note>
-
+
+   <note>
+    <para>
+     Поскольку определенные типы имеют неопределенное поведение при преобразовании в
+     целое число (<type>int</type>), то же самое происходит и при преобразовании в
+     число с плавающей запятой (<type>float</type>).
+    </para>
+   </note>
+  </sect3>
  </sect2>

  <sect2 xml:id="language.types.float.comparison">

Modified: phpdoc/ru/trunk/language/types/integer.xml
===================================================================
--- phpdoc/ru/trunk/language/types/integer.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/types/integer.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 351133 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <sect1 xml:id="language.types.integer">
@@ -253,7 +253,10 @@
    <title>Из строк</title>

    <simpara>
-    Смотрите <link linkend="language.types.string.conversion">Преобразование строк в числа</link>
+    Если строка <link linkend="language.types.numeric-strings">содержит числа</link>
+    или ведущая числовая, тогда она будет преобразована в соответствующее целочисленное значение,
+    в противном случае она преобразуется в ноль
+    (<literal>0</literal>).
    </simpara>
   </sect3>


Modified: phpdoc/ru/trunk/language/types/string.xml
===================================================================
--- phpdoc/ru/trunk/language/types/string.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/types/string.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 351133 Maintainer: rjhdby Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: rjhdby Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <sect1 xml:id="language.types.string">
@@ -993,8 +993,9 @@

   <note>
    <para>
-    Символ десятичной точки определяется из настроек локали текущего скрипта
-    (категория LC_NUMERIC). Смотрите также <function>setlocale</function>.
+    Начиная с PHP 8.0.0, символоом десятичной точки всегда является
+    <literal>.</literal>. До PHP 8.0.0 символ десятичной точки определялся в локали скрипта
+    (категория LC_NUMERIC). Смотрите функцию <function>setlocale</function>
    </para>
   </note>

@@ -1043,78 +1044,6 @@

  </sect2>

- <sect2 xml:id="language.types.string.conversion">
-  <title>Преобразование строк в числа</title>
-
-  <simpara>
-   Если строка распознается как числовое значение, результирующее значение
-   и тип определяется так, как показано далее.
-  </simpara>
-
-  <simpara>
-   Если строка не содержит какой-либо из символов '.', 'e', или 'E', и
-   значение числа помещается в пределы целых чисел (определенных
-   <constant>PHP_INT_MAX</constant>), строка будет распознана как целое число (<type>int</type>).
-   Во всех остальных случаях она считается числом с плавающей точкой (<type>float</type>).
-  </simpara>
-
-  <para>
-   Значение определяется по начальной части строки. Если строка
-   начинается с верного числового значения, будет использовано это
-   значение. Иначе значением будет 0 (ноль). Верное числовое значение
-   - это одна или более цифр (могущих содержать десятичную точку),
-   по желанию предваренных знаком с последующим необязательным
-   показателем степени. Показатель степени - это 'e' или 'E' с
-   последующими одной или более цифрами.
-  </para>
-
-  <informalexample>
-   <programlisting role="php">
-<![CDATA[
-<?php
-$foo = 1 + "10.5";                // $foo это float (11.5)
-$foo = 1 + "-1.3e3";              // $foo это float (-1299)
-$foo = 1 + "bob-1.3e3";           // $foo это integer (1)
-$foo = 1 + "bob3";                // $foo это integer (1)
-$foo = 1 + "10 Small Pigs";       // $foo это integer (11)
-$foo = 4 + "10.2 Little Piggies"; // $foo это float (14.2)
-$foo = "10.0 pigs " + 1;          // $foo это float (11)
-$foo = "10.0 pigs " + 1.0;        // $foo это float (11)
-?>
-]]>
-   </programlisting>
-  </informalexample>
-
-  <simpara>
-   Более подробную информацию об этом преобразовании смотрите в разделе
-   о strtod(3) документации Unix.
-  </simpara>
-
-  <para>
-   Если вы хотите протестировать любой из примеров этого раздела,
-   скопируйте и вставьте его и следующую строку, чтобы
-   увидеть, что происходит:
-  </para>
-
-  <informalexample>
-   <programlisting role="php">
-<![CDATA[
-<?php
-echo "\$foo==$foo; тип: " . gettype ($foo) . "<br />\n";
-?>
-]]>
-   </programlisting>
-  </informalexample>
-
-  <para>
-   Не ожидайте получить код символа, преобразовав его в целое (как
-   это делается, например, в C). Для преобразования символов в
-   их ASCII-коды и обратно используйте функции <function>ord</function>
-   и <function>chr</function>.
-  </para>
-
- </sect2>
-
  <sect2 xml:id="language.types.string.details">

   <title>Подробности реализации строкового типа</title>

Modified: phpdoc/ru/trunk/language/types/type-juggling.xml
===================================================================
--- phpdoc/ru/trunk/language/types/type-juggling.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/types/type-juggling.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 351133 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <sect1 xml:id="language.types.type-juggling">
@@ -60,8 +60,9 @@
  </informalexample>

  <simpara>
-  Если последние два примера вам непонятны, смотрите
-  <link linkend="language.types.string.conversion">Преобразование строк в числа</link>.
+  Если последние два приведенных выше примера кажутся странными, посмотрите, как
+  <link linkend="language.types.numeric-strings">строки, содержащие числа</link>
+  преобразуются в целые числа.
  </simpara>

  <simpara>

Modified: phpdoc/ru/trunk/language/types.xml
===================================================================
--- phpdoc/ru/trunk/language/types.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/language/types.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 351365 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <chapter xml:id="language.types" xmlns="http://docbook.org/ns/docbook">
@@ -193,6 +193,7 @@
  &language.types.integer;
  &language.types.float;
  &language.types.string;
+ &language.types.numeric-strings;
  &language.types.array;
  &language.types.iterable;
  &language.types.object;

Modified: phpdoc/ru/trunk/reference/math/functions/round.xml
===================================================================
--- phpdoc/ru/trunk/reference/math/functions/round.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/reference/math/functions/round.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 350654 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: shein Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <refentry xml:id="function.round" xmlns="http://docbook.org/ns/docbook">
@@ -36,14 +36,6 @@
  </caution>
  </para>
   -->
-  <para>
-   <note>
-    <simpara>
-     PHP по умолчанию не может правильно обрабатывать строки типа <literal>"12,300.2"</literal>.
-     Более подробно читайте в разделе <link linkend="language.types.string.conversion">Преобразование строк в числа</link>.
-    </simpara>
-   </note>
-  </para>
  </refsect1>
  <refsect1 role="parameters">
   &reftitle.parameters;

Modified: phpdoc/ru/trunk/reference/opcache/ini.xml
===================================================================
--- phpdoc/ru/trunk/reference/opcache/ini.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/reference/opcache/ini.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- $Revision$ -->
-<!-- EN-Revision: 351415 Maintainer: rjhdby Status: ready -->
+<!-- EN-Revision: 351699 Maintainer: rjhdby Status: ready -->
 <!-- Reviewed: yes Maintainer: lex -->

 <sect1 xml:id="opcache.configuration" xmlns="http://docbook.org/ns/docbook">
@@ -1159,7 +1159,7 @@
    </varlistentry>
    <varlistentry xml:id="ini.opcache.jit-max-loop-unrolls">
     <term>
-     <parameter>opcache.jit_max_loops_unroll</parameter>
+     <parameter>opcache.jit_max_loop_unrolls</parameter>
      <type>int</type>
     </term>
     <listitem>

Modified: phpdoc/ru/trunk/reference/var/functions/is-numeric.xml
===================================================================
--- phpdoc/ru/trunk/reference/var/functions/is-numeric.xml	2020-11-28 05:32:00 UTC (rev 351719)
+++ phpdoc/ru/trunk/reference/var/functions/is-numeric.xml	2020-11-28 08:07:24 UTC (rev 351720)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 349477 Maintainer: Rjhdby Status: ready -->
+<!-- EN-Revision: 351700 Maintainer: Rjhdby Status: ready -->
 <!-- Reviewed: yes -->
 <!-- $Revision$ -->
 <refentry xml:id="function.is-numeric" xmlns="http://docbook.org/ns/docbook">
@@ -17,12 +17,8 @@
    <methodparam><type>mixed</type><parameter>var</parameter></methodparam>
   </methodsynopsis>
   <para>
-   Проверяет, является ли данная переменная числом. Строки, содержащие
-   числа, состоят из необязательного пробела, необязательного знака, любого количества цифр,
-   необязательной десятичной части и необязательной экспоненциальной части.
-   Так, <literal>+0123.45e6</literal> является верным числовым
-   значением. Шестнадцатеричные (<literal>0xf4c3b00c</literal>) и
-   двоичные (<literal>0b10100111001</literal>) нотации не допускаются.
+   Определяет, является ли данная переменная числом или
+   <link linkend="language.types.numeric-strings">строкой, содержащей число</link>.
   </para>
  </refsect1>

@@ -45,8 +41,8 @@
  <refsect1 role="returnvalues">
   &reftitle.returnvalues;
   <para>
-   Возвращает &true;, если <parameter>var</parameter> является числом или строкой,
-   содержащей число или &false; в противном случае.
+   Возвращает &true;, если <parameter>var</parameter> является числом или
+   <link linkend="language.types.numeric-strings">строкой, содержащей число</link> или &false; в противном случае.
   </para>
  </refsect1>

@@ -109,35 +105,11 @@
   </para>
  </refsect1>

- <refsect1 role="changelog"><!-- {{{ -->
-  &reftitle.changelog;
-  <para>
-   <informaltable>
-    <tgroup cols="2">
-     <thead>
-      <row>
-       <entry>&Version;</entry>
-       <entry>&Description;</entry>
-      </row>
-     </thead>
-     <tbody>
-      <row>
-       <entry>7.0.0</entry>
-       <entry>
-        Строки, содержащие шестнадцатеричную (<literal>0xf4c3b00c</literal>) запись, больше
-        не считаются числовыми строками, то есть <function>is_numeric</function> вернет &false;.
-       </entry>
-      </row>
-     </tbody>
-    </tgroup>
-   </informaltable>
-  </para>
- </refsect1><!-- }}} -->
-
  <refsect1 role="seealso">
   &reftitle.seealso;
   <para>
    <simplelist>
+    <member><link linkend="language.types.numeric-strings">Строки, содержащие числа</link></member>
     <member><function>ctype_digit</function></member>
     <member><function>is_bool</function></member>
     <member><function>is_null</function></member>