svn: /phpdoc/ru/trunk/ appendices/migration73/other-changes.xml language/oop5/properties.xml language/operators.xml reference/xml/functions/xml-set-external-entity-ref-handler.xml
[email protected] (Sergey Panteleev)
| Newsgroups | php.doc.ru |
|---|---|
| Message-ID | <[email protected]> |
sergey Wed, 18 Dec 2019 03:51:31 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=348565
Log:
docs(ru): Updated to English revision
Changed paths:
U phpdoc/ru/trunk/appendices/migration73/other-changes.xml
U phpdoc/ru/trunk/language/oop5/properties.xml
U phpdoc/ru/trunk/language/operators.xml
U phpdoc/ru/trunk/reference/xml/functions/xml-set-external-entity-ref-handler.xml
svn-diffs-348565.txt
(text/x-diff, 8.1 KB)
Modified: phpdoc/ru/trunk/appendices/migration73/other-changes.xml
===================================================================
--- phpdoc/ru/trunk/appendices/migration73/other-changes.xml 2019-12-18 03:26:18 UTC (rev 348564)
+++ phpdoc/ru/trunk/appendices/migration73/other-changes.xml 2019-12-18 03:51:31 UTC (rev 348565)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 347407 Maintainer: lex Status: ready -->
+<!-- EN-Revision: 348557 Maintainer: lex Status: ready -->
<!-- Reviewed: yes Maintainer: sergey -->
<sect1 xml:id="migration73.other-changes" xmlns:xlink="http://www.w3.org/1999/xlink">
Modified: phpdoc/ru/trunk/language/oop5/properties.xml
===================================================================
--- phpdoc/ru/trunk/language/oop5/properties.xml 2019-12-18 03:26:18 UTC (rev 348564)
+++ phpdoc/ru/trunk/language/oop5/properties.xml 2019-12-18 03:51:31 UTC (rev 348565)
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 339448 Maintainer: irker Status: ready -->
+<!-- EN-Revision: 348562 Maintainer: irker Status: ready -->
<!-- Reviewed: yes -->
<!-- $Revision$ -->
<sect1 xml:id="language.oop5.properties" xmlns="http://docbook.org/ns/docbook">
<title>Свойства</title>
-
+
<para>
Переменные, которые являются членами класса, называются "свойства".
Также их называют, используя другие термины,
@@ -11,14 +11,15 @@
такие как "атрибуты" или "поля", но в рамках этой документации,
мы будем называть их свойствами.
Они определяются с помощью ключевых слов <literal>public</literal>,
- <literal>protected</literal> или <literal>private</literal>, следуя правилам
- правильного объявления переменных. Это объявление может содержать инициализацию, но
+ <literal>protected</literal>
+ или <literal>private</literal>, могут сопровождаться необязательным объявлением типа и
+ следуют правилам правильного объявления переменных. Это объявление может содержать инициализацию, но
эта инициализация должна быть постоянным значением, то есть значение должно быть
вычислено во время компиляции и не должны зависеть
от информации, полученной во время выполнения для их вычисления.
</para>
<para>
- См. <xref linkend="language.oop5.visibility" /> для получения
+ Смотрите <xref linkend="language.oop5.visibility" /> для получения
информации о применении
<literal>public</literal>, <literal>protected</literal>,
и <literal>private</literal>.
@@ -60,7 +61,7 @@
<link linkend="language.oop5.static">статически</link> из контекста второго
объекта).
</para>
-
+
<para>
<example>
<title>Определение свойств</title>
@@ -95,7 +96,7 @@
</programlisting>
</example>
</para>
-
+
<note>
<para>
Существуют несколько интересных функций для обработки классов и объектов. Вы
@@ -103,10 +104,10 @@
<link linkend="ref.classobj">Функции для классов/объектов</link>.
</para>
</note>
-
+
<para>
Начиная с PHP 5.3.0
- <link linkend="language.types.string.syntax.heredoc">heredocs</link> и
+ <link linkend="language.types.string.syntax.heredoc">heredocs</link> и
<link linkend="language.types.string.syntax.nowdoc">nowdocs</link>
могут быть использованы в любом статическом контексте данных, включая
определение свойств.
@@ -134,6 +135,45 @@
Поддержка Nowdoc и Heredoc была добавлена в PHP 5.3.0.
</para>
</note>
+
+ <para>
+ Начиная с PHP 7.4.0, определения свойств могут включать объявление типа, за исключением
+ типа <literal>callable</literal>
+ <example>
+ <title>Пример использования типизированных свойств</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+
+class User
+{
+ public int $id;
+ public string $name;
+
+ public function __construct(int $id, string $name)
+ {
+ $this->id = $id;
+ $this->name = $name;
+ }
+}
+
+$user = new User(1234, "php");
+echo "ID: " . $user->id;
+echo "\n";
+echo "Имя: " . $user->name;
+
+?>
+]]>
+ </programlisting>
+ &example.outputs;
+ <screen>
+<![CDATA[
+ID: 1234
+Имя: php
+]]>
+ </screen>
+ </example>
+ </para>
</sect1>
<!-- Keep this comment at the end of the file
Modified: phpdoc/ru/trunk/language/operators.xml
===================================================================
--- phpdoc/ru/trunk/language/operators.xml 2019-12-18 03:26:18 UTC (rev 348564)
+++ phpdoc/ru/trunk/language/operators.xml 2019-12-18 03:51:31 UTC (rev 348565)
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 348384 Maintainer: shein Status: ready -->
+<!-- EN-Revision: 348555 Maintainer: shein Status: ready -->
<!-- $Revision$ -->
<!-- Reviewed: yes -->
<chapter xml:id="language.operators" xmlns="http://docbook.org/ns/docbook">
@@ -550,12 +550,13 @@
<para>
Оператор <link linkend="language.oop5.basic.new">new</link>
автоматически возвращает ссылку, поэтому присваивание результата операции
- <link linkend="language.oop5.basic.new">new</link> по ссылке начиная с PHP 5.3
+ <link linkend="language.oop5.basic.new">new</link> по ссылке
+ не допускается с PHP 7.0.0, начиная с PHP 5.3.0
генерирует ошибку уровня <constant>E_DEPRECATED</constant>, а в более ранних
версиях - ошибку уровня <constant>E_STRICT</constant>.
</para>
<para>
- Например, следующий код выдаст предупреждение:
+ Например, следующий код выдаст ошибку или предупреждение:
<informalexample>
<programlisting role="php">
<![CDATA[
@@ -562,13 +563,28 @@
<?php
class C {}
-/* Следующая строка сгенерирует следующее сообщение об ошибке:
- * Deprecated: Assigning the return value of new by reference is deprecated in...
- */
$o = &new C;
?>
]]>
</programlisting>
+ &example.outputs.7;
+ <screen>
+<![CDATA[
+Parse error: syntax error, unexpected 'new' (T_NEW) in …
+]]>
+ </screen>
+ &example.outputs.53;
+ <screen>
+<![CDATA[
+Deprecated: Assigning the return value of new by reference is deprecated in …
+]]>
+ </screen>
+ &example.outputs.5;
+ <screen>
+<![CDATA[
+Strict Standards: Assigning the return value of new by reference is deprecated in …
+]]>
+ </screen>
</informalexample>
</para>
<para>
Modified: phpdoc/ru/trunk/reference/xml/functions/xml-set-external-entity-ref-handler.xml
===================================================================
--- phpdoc/ru/trunk/reference/xml/functions/xml-set-external-entity-ref-handler.xml 2019-12-18 03:26:18 UTC (rev 348564)
+++ phpdoc/ru/trunk/reference/xml/functions/xml-set-external-entity-ref-handler.xml 2019-12-18 03:51:31 UTC (rev 348565)
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 345905 Maintainer: tmn Status: ready -->
+<!-- EN-Revision: 348557 Maintainer: tmn Status: ready -->
<!-- Reviewed: yes -->
<!-- $Revision$ -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.xml-set-external-entity-ref-handler">