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)

Ответ на: комментарий от EXL

Миста была взломана за 3 минуты после публикации новости в 2006м году о публикации ее исходников.

Сейчас в ее исходники нельзя вносить изменений из за.. ну вы сами понимаете почему

Типично для большинства пых пых творений. И пых до сих пор считается «сам по себе фреймворком»?

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

К тормозному PHP

4.2, JIT кстати оказался не сильно полезным, интерпретатор и так был лучший.

Именно из-за этого все крупные компании, которые имели возможность вляпаться в PHP пишут трансляторы из PHP в норальный язык программирования C++

Эти трансляторы были созданы еще до PHP7.

PHP-FPM тот ещё жрун памяти и ресурсов CPU

Можно подняться на swoole.

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

Типично для большинства пых пых творений.

Ну вот хоть обсуждать начал …

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

Теперь я окончательно убежден в том, что ты реально тупой (как будто твоей постоянной беготни с выпученными зенками при любом упоминании X11/PHP/Bash было недостаточно).

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

HHVM к HipHop имеет очень опосредованное отношение и конечно же ни в какой C++ он не транслирует. Впрочем у меня ощущение, что ты троллишь.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

HHVM к HipHop имеет очень опосредованное отношение и конечно же ни в какой C++ он не транслирует.

Да какая к чёрту разница? Все эти HipHop, HHVM, KPHP и прочие костыли и велосипеды кривого PHP-мирка не от хорошей жизни были созданы, а от того что PHP сосёт по части производительности.

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

Так код на bash получается более maintainable

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

Ну так-то всё верно аноним выше съехал. Что Bash, что PHP – скриптуха с довольно неоднозначной и наркоманской архитектурой, синтаксисом, историей и пользователями.

Прямо из одной бочки разлив.

Так что LOR’у очень повезло, что он на JVM, а не на PHP-FPM, как какой-нибудь дохлый unixforum.org

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

не от хорошей жизни были созданы

Братюня, это было так давно, что я уже и не помню. Лет 20 назад. Последние лет 10 в них нет никакой нужды и они сливают стандартному пыху.

PHP сосёт по части производительности

PHP сейчас самый быстрый интерпретатор, как бы.

no-such-file ★★★★★
()
Ответ на: комментарий от EXL

довольно неоднозначной и наркоманской архитектурой, синтаксисом, историей и пользователями

Велкам в реальный мир.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

Последние лет 10 в них нет никакой нужды и они сливают стандартному пыху.

Настолько нет нужды, что все эти компании имевшие в прошлом счастье наступить в PHP, всё снова и снова натирают эти свои «деревянные игрушки прибитые к полу»:

https://habr.com/ru/company/vk/blog/527420/

Строчат релизы как сумасшедшие: https://github.com/facebook/hhvm/releases?after=nightly-2020.11.12

и т. д.

И всё это потому что PHP самый быстрый, действительно.

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

всё снова и снова натирают эти свои «деревянные игрушки прибитые к полу»:

Ну КОБОЛ тоже кто-то использует. Тоже там релизы строчат, ООП прикрутили и т.п.

no-such-file ★★★★★
()
Ответ на: комментарий от AdonisSexyBoy

там даже не php5, а вообще уже свой язычек

<EXL>
И даже он лучше заскорузлого PHP-говна.
</EXL>
anonymous
()
Ответ на: комментарий от AdonisSexyBoy

KPHP vs PHP: в чём мы превосходим

В скорости. Если использовать KPHP грамотно, то код будет работать значительно быстрее, чем на PHP 7.4.

EXL ★★★★★
()

Вот уж не думал что ЛОРовцы будут путать язык программирования с реализацией веб-сервера.

При чем тут нахер FPM к языку программирования ?

Запускайте свою Джаву через fastcgi апача или нджинкса - будет то же самое тормознутое говно.

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

Заскорузлое – это X11, а PHP – это просто.

Learn The Difference, It Could Save Your Life.

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

Когда я пару лет назад тестировал производительность сайта под PHP 7.2, для более-менее честного сравнения отключался xdebug и development режим сайта, поскольку оба дают очень существенный оверхед при исполнении. В таком режиме многие страницы, где не используются асинхронные запросы (в PHP коде вместо этого ведь просто заглушки стоят), выполнялись со сравнимой скоростью (страницы вроде списка друзей или мессенджера отрабатывали за такое же время, как и KPHP, плюс-минус 10%). Некоторые страницы, вроде ленты, действительно сильно заточены под KPHP и работали в ~10 раз медленней, но в общем и целом разница была не такая большая, и точно не в 3-10 раз.

Плюс у них куча ограничений, о чем и пишут в статье:

Например, нельзя обращаться к полям по имени или вызывать так методы. Нет и не может быть магических методов. Классы совсем никак не стыкуются с mixed. Нельзя из функции вернуть «либо класс, либо массив» — не сойдётся по типам. Нельзя в функцию передать разные классы без общего предка (впрочем, в KPHP есть шаблонные функции, но это уже сложнее). Нельзя в хеш-таблицу сложить одновременно числа, строки и инстансы — нет, иди и делай типизированный класс или используй именованные кортежи.

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

Вот уж не думал что ЛОРовцы будут путать язык программирования с реализацией веб-сервера.

Так то @EXL, это особый случай, ему дядя из корпорации сказал – «PHP прааативный», «жри Wayland с лопаты», «X11 не модно» и т.д., так он и давай носиться по всему форуму с этими визгами, своего мнения или опыта – ноль, только и остается что ретранслировать чужие. Более податливого существа еще поискать надо.

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

А потом вспомнить, что в PHP их и вовсе нет.

Маня, они там и не нужны.

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

И всё это потому что PHP самый быстрый, действительно.

Все это потому что PHP не должен быть быстрым, но он бесплатен, предназначен для работы в вебе, прост, а значит макак можно нанять не потом, через год, за 100500 тыщ зарплаты, а хоть сегодня, за банку риса. Ну а в скорость упремся потом, не сегодня, сегодня главное показатели, а там как нибудь распетляем.

Взяли кусачки, попробовали обрезать траву в горшочке. О! Работает, значит можно и в огород. Не, херня творится, надо приделать к кусачкам косу. Вроде работает, но теперь бутылочное горлышко в другом месте. Нада приделать моторчик. Скорость возросла, но теперь оно выглядит несуразно, и бензин жрет. И правда, с чего бы это.

windows10 ★★★★★
()

Пишу себе на PHP реализацию интерфейсов умного дома. Там работа с i2c, serial, математика, просчеты, работа с реле, датчиками. Иногда сайты, правда без фреймворков, а from scratch как грица. Оказывается PHP неполноценен, EXL так сказал. Ну че, допишу код программируемого контактора, и пойду с горя мандаринку съем, покомплексую.

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

Maxcom когда с PHP-говна на Java/Spring сайт переписал, дефейсы и взломы ЛОРа чудесным образом ушли

Это когда было? Во времена пхп4 или ещё раньше?

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

PHP сосёт по части производительности

Тут жеральд же тестил кто кого заборет — пых вс пистон — пистон оч сильно профукал пыху.

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

@return array<string, User>
Здесь сказано, что массив возвращаемых функцией getUsers имеет строковые ключи и значения типа User

В пхп все ключи строковые, хоть обженерься.

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

Никто Федору в этом отреде поздравлять не собирался.

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

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

У хорошего, грамотного пыхоеда зп выше чем у крестов/жавистов. Вот только толкового пыхоеда найти нифига не проще чем живого коболиста

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

Что ты понимаешь под хорошим и грамотным пыхоедом?

У нас переход из пыха в банк без пыха с фуллстек джавой означает повышение зарплаты в 10 раз.

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

повышение зарплаты в 10 раз

Свежо питание да серится с трудом. Даже 30к х10 это 300к. 300+к за жабу платят минимум сеньору-тимлиду и от силы десяток компаний на всю страну. А 30к за пых даже джуну не платят. Короче ты раза в 2-3 минимум приврал, но не суть

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

upcFrost ★★★★★
()
Ответ на: да пожалста от Fafhrd

Рекурсивный фибоначчи… попробовал у себя:

$ php7.4 recfib45.php
1134903170
Finished in 184.567s

$ php8.0 recfib45.php
1134903170
Finished in 177.045s

$ hhvm recfib45.hack
1134903170
Finished in 15.332s

Это таки тот случай, где HHVM, неожиданно для меня, справился лучше.

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

добавил в пасту hhvm, здесь продублирую

HipHop VM 4.85.0 (rel)
1134903170

real 0m7,723s
user 0m7,588s
sys 0m0,076s

Чуть хуже голанга, и чуть менее чем в 2 раза шустрее пыха 8, что в общем-то неплохо для последнего.

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

А, JIT привязан к OPcache, это объясняет.

# php7.4 -d opcache.enable_cli=1 recfib45.php
1134903170
Finished in 139.642

$ php8.0 -d opcache.enable_cli=1 -d opcache.jit_buffer_size=10M recfib45.php
1134903170
Finished in 34.176s

Я ранее проверял HHVM на работе с массивами и оптимизации циклов, там он показал себя значительно хуже.

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

Не нативные, а родные. О май лангвич

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

Сажи, а где ты нашел высоко нагруженные и сложные в плане архитектуры приложения на пыхе?

Сайт визитка, стандартный для локального рынка говношоп, для которого нужно менять темплейты на смарти, все..

Пока под указанное тобой определение попадает только нода и спринг бут.

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

Я не замечал, чтобы Wikipedia тормозила или чтобы это было заметно.

ВКашечка тоже не замечал, чтобы дико тормозила.

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

Сажи, а где ты нашел высоко нагруженные и сложные в плане архитектуры приложения на пыхе?

Есть как минимум пара пыхопрожектов почти в каждой крупной конторе. И в мейле есть, и в яндексе есть, и почти уверен что в гугле тоже есть. Про вк и лицокнигу даже не говорю.

А то так можно сказать что и на перле только однострочники пишут

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

См. выше.

Это пограничные случаи. Экстраполяция отдельных историй «узбеков» на «это везде».

А «везде» обычно это код на php4, который почему-то запускается на пятой версии.

И Смарти там - это высшее достижение 2020го года

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

Да хз какой реактивности все ждут от PHP и, главное, зачем.

Тут вообще публика своеобразная: просто - плохо, сложно - ужасно, глаза текут; есть обратная совместимость - тащат костыли и не выкидывают их, нет совместимости - разработчики ломают обратную совместимость!

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

тут бы пруфы, передок может и на php, но обычно при таких заявлениях нужно иметь твердый инсайд в с черного входа, если ты понимаешь о чём я.

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