mirror of
https://github.com/php/doc-ru.git
synced 2025-07-30 12:57:40 +00:00
upd
git-svn-id: https://svn.php.net/repository/phpdoc/ru/trunk@347762 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
@ -1,12 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- EN-Revision: 93b9a05101ebac163e57deb362bf45ff63387f56 Maintainer: mch Status: ready -->
|
||||
<!-- EN-Revision: 1319917d0ffc1a1e48fed0ebb0c2cc00615fd81d Maintainer: mch Status: ready -->
|
||||
<!-- Reviewed: yes Maintainer: lex -->
|
||||
<!-- $Revision$ -->
|
||||
<sect1 xml:id="language.oop5.changelog" xmlns="http://docbook.org/ns/docbook">
|
||||
<title>Журнал изменений ООП</title>
|
||||
<para>
|
||||
Здесь перечислены изменения модели ООП в PHP 5. Описания и другие примечания
|
||||
этих возможностей можно найти в документации ООП PHP5.
|
||||
Здесь перечислены изменения модели ООП в PHP. Описания и другие примечания
|
||||
этих возможностей можно найти в документации ООП PHP.
|
||||
</para>
|
||||
<para>
|
||||
<informaltable>
|
||||
@ -18,10 +18,146 @@
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>7.4.0</entry>
|
||||
<entry>
|
||||
Изменено: Теперь можно выбрасывать исключение в функции
|
||||
<function>__toString</function>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.4.0</entry>
|
||||
<entry>
|
||||
Добавлено: поддержка ограниченной ковариантности типов
|
||||
возвращаемого значения и типов аргументов. Поддержка
|
||||
полной вариативности производится только если
|
||||
используется автозагрузка. Внутри одного файла
|
||||
возможны только нециклические ссылки на типы.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.4.0</entry>
|
||||
<entry>
|
||||
Добавлено: Теперь можно задавать тип для свойств класса.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.3.0</entry>
|
||||
<entry>
|
||||
Несовместимость: распаковка аргументов для
|
||||
<classname>Traversable</classname> с нецелочисленными ключами
|
||||
больше не поддерживается. Такое поведение изначально не
|
||||
планировалось и теперь удалено.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.3.0</entry>
|
||||
<entry>
|
||||
Несовместимость: в прошлых версиях можно было разделить
|
||||
статические свойства при помощи присваивания по ссылке.
|
||||
Теперь нельзя.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.3.0</entry>
|
||||
<entry>
|
||||
Изменено: теперь оператор
|
||||
<link linkend="language.operators.type">instanceof</link>
|
||||
допускает литералы в качестве первого операнда. В этом
|
||||
случае всегда будет возвращено &false;.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.2.0</entry>
|
||||
<entry>
|
||||
Устарело: метод <function>__autoload</function> объявлен устаревшим
|
||||
в пользу <function>spl_autoload_register</function>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.2.0</entry>
|
||||
<entry>
|
||||
Изменено: для имен классов, интерфейсов и трейтов нельзя использовать слово <literal>object</literal>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.2.0</entry>
|
||||
<entry>
|
||||
Изменено: для группового use теперь можно добавлять висящую запятую в конце списка.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.2.0</entry>
|
||||
<entry>
|
||||
Изменено: Типы параметров из переопределенных методов
|
||||
и реализации интерфейсов теперь указывать не обязательно
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.2.0</entry>
|
||||
<entry>
|
||||
Изменено: если один абстрактный класс наследует от другого
|
||||
абстрактного класса, то он может переопределять
|
||||
его абстрактные методы.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.1.0</entry>
|
||||
<entry>
|
||||
Изменено: для имен классов, интерфейсов и трейтов нельзя использовать слова: <literal>void</literal> и <literal>iterable</literal>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.1.0</entry>
|
||||
<entry>
|
||||
Добавлено: теперь можно задавать
|
||||
<link linkend="language.oop5.visiblity-constants">область видимости для констант классов</link>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Определение одинаковых (полностью совпадающих) свойств в двух трейтах больше не вызывает ошибку.
|
||||
Устарело: <link linkend="language.oop5.static">Статический</link> вызов нестатических методов.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Устарело: <link linkend="language.oop5.decon">
|
||||
конструктор</link> в стиле PHP 4. Т.е. метод с именем идентичным
|
||||
имени класса, в котором он объявлен.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Добавлено: групповая декларация <emphasis>use</emphasis>:
|
||||
классы, функции и константы, которые надо импортировать
|
||||
из одного и того же пространства имен теперь могут быть
|
||||
сгруппированы в одном выражении use.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Добавлено: добавлена поддержка
|
||||
<link linkend="language.oop5.anonymous">анонимных классов</link>
|
||||
с помощью <literal>new class</literal>.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Несовместимость: итерирование объектов не реализующих
|
||||
<classname>Traversable</classname> теперь ведет себя аналогично
|
||||
итерированию массива по ссылке.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>7.0.0</entry>
|
||||
<entry>
|
||||
Изменено: Определение одинаковых (полностью совпадающих) свойств
|
||||
в двух <link linkend="language.oop5.traits">трейтах</link> больше не вызывает ошибку.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
@ -52,7 +188,8 @@
|
||||
<entry>5.4.0</entry>
|
||||
<entry>
|
||||
Изменено: Если <link linkend="language.oop5.abstract">абстрактный</link> класс
|
||||
определяет сигнатуру для конструктора, то она будет принудительно применяться.
|
||||
определяет сигнатуру для <link
|
||||
linkend="language.oop5.decon">конструктора</link>, то она будет принудительно применяться.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
@ -142,7 +279,7 @@
|
||||
Сейчас он вызывается в любом контексте строки (например, в
|
||||
<function>printf</function> с модификатором <literal>%s</literal>), но не
|
||||
в других типах контекста (например, с модификатором <literal>%d</literal>).
|
||||
С PHP 5.2.0, преобразование объектов без метода <literal>__toString</literal>
|
||||
С PHP 5.2.0, преобразование объектов без метода <link linkend="object.tostring">__toString</link>
|
||||
в строку выдает ошибку уровня <constant>E_RECOVERABLE_ERROR</constant>.
|
||||
</entry>
|
||||
</row>
|
||||
|
Reference in New Issue
Block a user