- PVSM.RU - https://www.pvsm.ru -

Следующая версия PHP будет называться PHP 7

imageДолгий спор вокруг названия следующей версии PHP сегодня наконец-то закончился: итак, следующая версия будет иметь порядковый номер 7.

В основу PHP7 ляжет PHPng [1]. Многие из свежих предложений и патчей делаются уже на его базе — в том числе такие интересные вещи, как uniform variable syntax [2], native big integers [3] и abstract syntax tree [4]. Из-за изменений во внутренних API [5], многие сторонние расширения (например, xdebug, расширения для mongodb и memcached, php-protocolbuffers [6]) должны быть переработаны, поэтому в PHP 5.7 PHPng войти уже не сможет. Казалось бы, проблема не так велика — но, например, Yahoo в своих разработках использует около 400 различных PHP-расширений, поэтому процесс должен занять некоторое время.

Когда зашел вопрос о выборе номера для следующей версии PHP, разработчики сразу вспомнили о предыдущей попытке сделать PHP 6, которая стартовала в 2005 году и была прекращена в 2010 [7] из-за сложностей с реализацией поддержки Юникода. Поэтому все нововведения PHP6, кроме той самой поддержки, были потом реализованы в PHP 5.3 и PHP 5.4

Но из-за этой неудачи против названия PHP 6 аргументы нашлись быстро: на Амазоне до сих пор полно книг «Learn PHP6 in 1 hour» [8], которые нынче годятся разве что на растопку печи; о «заброшенной» PHP6 в прошлом было много докладов на конференциях; да и в целом — все то, что было написано о PHP 6 до 2010 года — никуда не делось и создало бы лишнюю путаницу вокруг релиза. Если забыть о том, что вопрос «Почему после PHP 5 был PHP 7?» рискует вскоре поселиться среди самых популярных тем на Тостере и StackOverflow, то объективных причин не пропускать версии у core developers в итоге не нашлось.

RFC [9]

Автор: HotWaterMusic

Источник [10]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/php-2/66305

Ссылки в тексте:

[1] PHPng: http://habrahabr.ru/post/222219/

[2] uniform variable syntax: https://wiki.php.net/rfc/uniform_variable_syntax

[3] native big integers: https://wiki.php.net/rfc/bigint

[4] abstract syntax tree: https://wiki.php.net/rfc/abstract_syntax_tree

[5] изменений во внутренних API: http://www.reddit.com/r/programming/comments/2ardou/php_57_aka_phpng_is_now_nearly_twice_as_fast_as/ciy1yg1

[6] php-protocolbuffers: https://github.com/chobie/php-protocolbuffers

[7] прекращена в 2010: http://habrahabr.ru/post/138269/

[8] на Амазоне до сих пор полно книг «Learn PHP6 in 1 hour»: http://www.amazon.co.uk/s/ref=sr_pg_1?rh=n%3A266239%2Ck%3APHP+6&keywords=PHP+6&ie=UTF8&qid=1404592989

[9] RFC: https://wiki.php.net/rfc/php6

[10] Источник: http://habrahabr.ru/post/231605/