PHP.mk документација
Промени во ООП
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
language.oop5.changelog.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + преведен приказ
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
language.oop5.changelog.php
Промени во ООП
Референца за `language.oop5.changelog.php` со подобрена типографија и навигација.
Промени во ООП
Промените во ООП моделот на PHP се евидентирани овде. Описи и други забелешки во врска со овие карактеристики се документирани во документацијата на ООП моделот.
| Верзија | = NULL |
|---|---|
| 8.4.0 | Додадено: Поддршка за Hooks за имот. |
| 8.4.0 | Додадено: Поддршка за Мрзливи објекти. |
| 8.1.0 | Додадено: Поддршка за final модификатор за константи во класи. Исто така, константите во интерфејси стануваат презапишливи по дифолт. |
| 8.0.0 | Додадено: Поддршка за nullsafe оператор ?-> за пристап до својства и методи на објекти што може да бидат null. |
| 7.4.0 | Променето: Сега е можно да се фрли исклучок во __toString(). |
| 7.4.0 | Додадено: Поддршка за ограничена коваријантност на типови на враќање и контраваријантност на типови на аргументи. Целосна поддршка за варијантност е достапна само ако се користи авто-вчитање. Во рамките на една датотека, можни се само нециклични референци на типови. |
| 7.4.0 | Додадено: Сега е можно да се типизираат својствата на класите. |
| 7.3.0 | Некомпатибилност: Распакувањето на аргументи на Траверзабилносо не-int клучови повеќе не се поддржува. Ова однесување не беше наменето и затоа е отстрането. |
| 7.3.0 | Некомпатибилност: Во претходните верзии беше можно да се одделат статичните својства со доделување референца. Ова е отстрането. |
| 7.3.0 |
Променето: Операторот instanceof
сега дозволува литерали како прв операнд, во тој случај резултатот е секогаш false.
|
| 7.2.0 | Осудено: Методот __autoload() е осуден во корист на spl_autoload_register(). |
| 7.2.0 |
Променето: Следниот назив не може да се користи за именување класи, интерфејси или трајти: object.
|
| 7.2.0 | Променето: Запирка на крајот сега може да се додаде во синтаксисната група за употреба на имиња за простори на имиња. |
| 7.2.0 | Променето: Проширување на типови на параметри. Типовите на параметри од презапишани методи и од имплементации на интерфејси сега може да се изостават. |
| 7.2.0 | Променето: Апстрактните методи сега можат да бидат преоптоварени кога апстрактна класа наследува друга апстрактна класа. |
| 7.1.0 |
Променето: Следниве имиња не можат да се користат за именување класи, интерфејси или трајти: void and iterable.
|
| 7.1.0 | Додадено: Сега е можно да се специфицира видливоста на константите во класата. |
| 7.0.0 | Застарено: Статични повици до методи кои не се декларирани како статични. |
| 7.0.0 | Застарено: PHP 4 стил constructor. Односно методи кои го имаат истото име како класата во која се дефинирани. |
| 7.0.0 | Додадено: Група use декларација: класи, функции и константи кои се увезуваат од истиот именски простор сега можат да се групираат заедно во една изјава за употреба. |
| 7.0.0 |
Додадено: Поддршка за
анонимни класи
е додадена преку new class.
|
| 7.0.0 | Некомпатибилност: Итерирање преку не-Траверзабилно object сега ќе има исто однесување како итерирање преку референца arrays. |
| 7.0.0 | Променето: Дефинирање (компатибилни) својства во две употребени traits веќе не предизвикува грешка. |
| 5.6.0 | Додадено: На __debugInfo() method. |
| 5.5.0 | Додадено: На ::class магична константа. |
| 5.5.0 | Додадено: finally за ракување со исклучоци. |
| 5.4.0 | Додадено: traits. |
| 5.4.0 | за ракување со исклучоци. abstract Променето: Ако constructor класа дефинира потпис за |
| 5.3.3 | сега ќе биде наметнат. namespaced Променето: Методи со исто име како последниот елемент од constructorимето на класата повеќе нема да се третираат како |
| 5.3.0 | . Оваа промена не влијае на класи кои не се во именски простор. |
| 5.3.0 |
Променето: Класите што имплементираат интерфејси со методи кои имаат стандардни вредности во прототипот повеќе не се обврзани да ја совпаѓаат стандардната вредност на интерфејсот.
echo $classname::constant;Променето: Сега е можно да се повикува класата користејќи променлива (на пр., self,
parent or static).
|
| 5.3.0 |
). Вредноста на променливата не може да биде клучен збор (на пр., E_WARNING Променето: А overloading
грешка на ниво се издава ако магичните staticметоди се декларирани
|
| 5.3.0 | . Исто така, ја наметнува потребата за јавна видливост. __autoload() Променето: Пред 5.3.0, исклучоците фрлени во catch функцијата не можеа да бидат фатени во catch блок, и резултираа со фатална грешка. Исклучоците сега фрлени во функцијата __autoload може да се фатат во |
| 5.3.0 | Додадено: На __callStatic method. |
| 5.3.0 | Додадено: heredoc and nowdoc блок, со една одредба. Ако фрлате прилагоден исклучок, тогаш класата за прилагоден исклучок мора да биде достапна. Функцијата __autoload може да се користи рекурзивно за вчитување на класата за прилагоден исклучок. const поддршка за класа |
| 5.3.0 | Додадено: Доцни статични врзувања. |
| 5.3.0 | Додадено: На __invoke() method. |
| 5.2.0 |
Променето: Операторот __toString()
методот беше повикан само кога директно се комбинираше со
echo or print. Но сега, се повикува во било кој string контекст (на пр. во
printf() with %s модификатор) но не и во други типови контексти (на пр. со %d модификатор). Од PHP 5.2.0, конвертирањето на objectбез
__toString метод предизвикува string
грешка од ниво. E_RECOVERABLE_ERROR Променето: Во претходните верзии на PHP 5, употребата на
|
| 5.1.3 |
се сметаше за застарена и би издавала грешка од ниво. var
Веќе не е застарена, затоа не ја издава грешката. E_STRICT
статичкиот метод сега се повикува за извезени класи од
|
| 5.1.0 | Променето: Операторот __set_state() статичкиот метод сега се повикува за класи извезени од var_export(). |
| 5.1.0 | Додадено: На __isset() and __unset() methods. |
Белешки од корисници
Нема белешки од корисници за оваа страница.