LINUX.ORG.RU

PHP 8.0.0

 


1

1

Команда разработчиков PHP объявила о выпуске новой версии языка — PHP 8.0.0.

Улучшения и новые возможности:

  • Union Types. Вместо аннотаций PHPDoc для комбинации типов вы можете использовать нативные объявления типа union, которые проверяются во время выполнения.

  • Именованные аргументы. Вместо аннотаций PHPDoc теперь можно использовать структурированные метаданные с родным синтаксисом PHP.

  • Оператор nullsafe. Вместо проверки на null теперь можно использовать цепочку вызовов с новым оператором nullsafe. Когда проверка одного элемента в цепочке не удается, выполнение всей цепочки прерывается, и она сводится к null.

  • Just-in-time компиляция. В PHP 8 появилось два движка JIT. Tracing JIT, наиболее многообещающий из двух, показывает улучшенную производительность: втрое на синтетических тестах и в 1,5-2 раза на некоторых специфических приложениях. Типичная производительность приложения находится на одном уровне с PHP 7.4.

>>> Подробности

★★★★☆

Проверено: cetjs2 ()
Последнее исправление: cetjs2 (всего исправлений: 2)

Видел тред на одной странице :)

Не люблю PHP, больше Python люблю. Но нельзя не поздравить ветерана.

anonymous
()

Ждал с нетерпением. Теперь надо дождаться вордпрессика с поддержкой этого пыха. И когда в репах будут бинарники самого пыха.

Infra_HDC ★★★★★
()
Ответ на: комментарий от anonymous

Эти 2 языка нельзя сравнивать. Даже ЕСМА с появлением Ноды(электрона) нельзя назвать полноценным языком.

mx__ ★★★★★
()
Ответ на: комментарий от bbk123

Даже браинфак полноценен ты о чём вообще?

anonymous
()
Ответ на: комментарий от bbk123

По сути не слишком то и сложно будет. И именно поэтому ненужно ибо скучно.

anonymous
()

Круто. Если бы еще когда-то дропнули тяжелое наследие от перла и сишечки, был бы замечательный язык.

goingUp ★★★★★
()
Ответ на: комментарий от kmeaw

Зарплатами программистов на нем. И отношением заказчика к исполнителю.

Так вот, основная проблема по ха пе заключается в том, что заказчик думает, что каждая уборщица или охнанник может писать на нем. И поэтому отношение к программистам на по ха пе напоминает усредненное отношение между охранником и уборщицей.

GP
()
Ответ на: комментарий от goingUp

Круто. Если бы еще когда-то дропнули тяжелое наследие от перла и сишечки, был бы замечательный язык.

Я его только и понимал наследием перла и сисечки. Надеюсь там что-то еще осталось.

hbars ★★★★★
()
Ответ на: комментарий от kmeaw

Ну и самый главный признак неполноценности быдлоязыка - это так называемый шредингеровский парадокс реализации его ООП: пых пых одновременно НЕ обьекто ориентированный и НЕ НЕ обьектно ориентированный недоязык.

Это означает, что если ты там будешь ПРОДОЛЖАТь писать как ВСЕ, а именно - быдлокод без фреймворков, ООП функций, ллкальных переменных, все в одном файле - то тебя обвинят в быдлокодерстве и выкинут.

И ОДНОВРЕМЕННО, если ты будешь ТУДА пытаться приивнести ООП, всякие фреймворки аля симфони, и даже пытаться НЕ использовать глобальные переменные, то тебе укажут на дверь, сказав, что нужно БЫТЬ КАК ВСЕ.

GP
()
Ответ на: комментарий от Infra_HDC

И не только него. Почти все популярные CMS на нём написаны.

grem ★★★★★
()

Оператор nullsafe. Вместо проверки на null теперь можно использовать цепочку вызовов с новым оператором nullsafe. Когда проверка одного элемента в цепочке не удается, выполнение всей цепочки прерывается, и она сводится к null.

Всего дохренилион лет понадобилось, чтобы добавить в php сишный

bool result = func1() && func2() && func3();
PPP328 ★★★★★
()
Ответ на: комментарий от GP

очередной гуру

Мальчик, знал бы ты что даже у С++ ООП не ООП на самом деле, тогда ты бы думал головой? На данный момент, нет ЯП с концепцией ООП на 100%. Это уже тысячи раз было обсужденно. Никому не нужен ООП в той форме, в которой его пропагандируют.

И даже больше, ООП не является панацеей в программировании. у РНР свой подход к написанию кода и он существует, больше чем ты живешь и не тебе ущербному оскорблять труд людей, на основании своих ущербных знаний

ihappy
()
Ответ на: комментарий от mx__

Даже ЕСМА с появлением Ноды(электрона) нельзя назвать полноценным языком.

А тебя можно назвать полноценным?

javascript
()
Ответ на: комментарий от PPP328

И на Scala (кажется в большей степени).

EXL ★★★★★
()
Ответ на: комментарий от GP

А вот тут я с тобой соглашусь. Из PHP всеми силами стараются сделать нормальный язык вроде Java. Давно уже заметно, как фичи (кстати древние) из Java переносят в PHP. Современный OOP-код на PHP даже похож на таковой из Java.

А если взять какой-нибудь модный PHP-говнофреймворк вроде Laravel или Symfony то отчётливо прослеживается калька и копипаста со Spring Framework.

EXL ★★★★★
()
Ответ на: комментарий от mx__

ECMA с появлением ноды - это вообще какой-то синтаксический сахар над ещё одним лэиром, где вся ужасная реализация скрыта от глаз хомяков-школьников)

qbbr ★★★★★
()

добра

PHP, начиная с 7ки вообще радует)

qbbr ★★★★★
()
Ответ на: комментарий от goingUp

Дропнем. Обязательно дропнем. Сломаем к херам обратную совместимость. Но потом.

anonymous
()

Вместо аннотаций PHPDoc

Я правильно понял, что юнионы введены только потому, что там какие-то парсеры комментариев обосрались? Ну и как водится в пхп — это говно воткнули прямо в рантайм.

Именованные аргументы вместо аннотаций PHPDoc

Ноги оттуда же, да?

Вместо проверки на null можно использовать цепочку вызовов с новым оператором nullsafe, когда проверка одного элемента в цепочке не удается, выполнение всей цепочки прерывается

Чем это отличается от «if (cond1 || cond2 || condN)»?

deep-purple ★★★★★
()
Ответ на: комментарий от EXL

Это старое мнение. Очень старое. Забудь — пхп (пока ещё) нормальный ЯП, но только в своей нише.

deep-purple ★★★★★
()
Ответ на: комментарий от GP

Какая Java, что ты, PHP - это попытка сделать человеческий Perl с C синтаксисом, но вся эта херня осталась в 90-ых, с шаред хостингами - где один запрос - один вызов интерпретатора пыха и смерть в объятиях Апачей

menangen ★★★★★
()
Ответ на: комментарий от deep-purple

Да что PHP, что Python куда-то не туда свернули. Facebook же выкатил годный JIT для php, но че-то про него ничего не слышно, зато новый JIT, который по факту мало что ускоряет - теперь на главной

menangen ★★★★★
()
Ответ на: комментарий от Infra_HDC

Можно не ждать и использовать плагин для Gatsby.

С релизом всех причастных поздравляю.

Princesska ★★★★
()
Ответ на: комментарий от GP

https://spb.hh.ru/vacancy/39785540?vss=11844960

Web-разработчик / программист PHP / MySQL
от 150 000 руб. на руки

ООО РОСТПЭЙ
Ростов-на-Дону, Доломановский переулок, д. 70 Д, оф. 1001, этаж 10

https://spb.hh.ru/vacancy/40024254?vss=11844960

Senior Magento/Magento2 developer
от 200 000 руб. до вычета налогов

Оджетто
Ростов-на-Дону

PPP328 ★★★★★
()
Последнее исправление: PPP328 (всего исправлений: 1)
Ответ на: комментарий от menangen

Судя по тому, что 80% кода, написанного на по ха пе больше напоминает смесь перла, Brainfuck и Malbolge, то попыка провалилась с треском.

GP
()
Ответ на: комментарий от GP

Если человек - профессионал, он будет писать грамотно на любом языке. А если же это школота, то никакой, даже самый «правильный» язык, не спасёт от г-нокода.

anonymous
()
Ответ на: комментарий от anonymous

В этом и заключается основная проблема пыха.

Профессионал н когда не выберет его.

GP
()
Ответ на: комментарий от anonymous

Хорошая попытка, но нет.

Нода вообще то создавалась как запускалка тулинга современного фронтендщика.

GP
()

теперь надо дождаться бенчмарков от techempower, чтобы увидеть результат наглядно

InterVi ★★★★
()
Ответ на: комментарий от GP

Когда нода создавалась, никакого тулинга у фронтенда еще не было. Выполнение js на серверах было заимплеменченое с первых версий js еще нетскейпом. Потом в разное время жс движки встраивались в куда-угодно, в том числе скоипты жс использовались в качестве гело-скриптов, и для программировпния asp.net приложений на сервере. Так же всю жизн на жс писали десктоп еще задолго до появления элнктрона. И с гуем и без нено, в виде сервисов и демонов. У жс была куча диалектов и не одна пара плпулярных двтжков, до появления v8. Несколько разлмчающихся по мощности рантаймов. И все это независимо от использования в браузере. С появлением революционного по эффективности движка v8 многие стали пытаться сделать из v8 независимый полноценный рантайм, обернув его в набор необходимых апи. Первому сделать это годно удалось Райану Дайлу, все оформить в MVP. Вокруг mvp образовалось коммунити, стали развивать. Потом проект взялп под крвдо компания. Произошел раскол коммунити с последующим мерджем.

Нода изначально создавалась для общего прикладного назначения.

Еслм вы не жили при всех этих событиях и как слелствие с ними не знакомы, то потредитест хотя бы провести изучение вопроса, прежде чем нести пхинею на технических форумах.

anonymous
()
Ответ на: комментарий от qbbr

Я когда лет 25 назад писал на пхп, то точно знал как расшифровывается это абреавитура. Причем тогда сайты делали в основном только на перле и пхп а перл как ни крути все таки полноценный язык. Помню в пхп был проект пхп-гтк но заглох. Я понимаю все развитие ПХП, добаление классов, шаблонов и т.д. но все равно вряд ли задумает писать настольное приложение на ПХП. Я думаю нам одного электрона уже хватило.

mx__ ★★★★★
()
Ответ на: комментарий от AUX

Упование на ООП - это признак быдлокодерства

Это да.
У ООП имеется своя ниша где он полезен.
Но многие становятся ООП-нутыми …

anonymous
()
Ответ на: комментарий от PPP328

чтобы добавить в php сишный

Там речь совсем не про это, а про obj?->doThis()?->doThat()?->fuckOff(). Если на каком то этапе метод вернёт null, то вся цепочка будет null без выбрасывания ошибки.

no-such-file ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.