Tərəfindən təqdim edildi первый бета-выпуск новой ветки языка программирования PHP 8. Релиз намечен на 26 ноября. Одновременно сформированы корректирующие выпуски PHP 7.4.9, 7.3.21 и
7.2.33, в которых устранены накопившиеся ошибки и уязвимости.
Dəstək именованных аргументов функций, позволяющих передававать в функцию значения в привязке к именам, т.е. можно передавать аргументы в произвольном порядке и определять необязательные аргументы. Например, «array_fill(start_index: 0, num: 100, value: 50)».
При вызове методов icazə verildi применение оператора «?», который позволяет инициировать вызов только, если метод присутствует, что позволяет избежать лишних проверок на возврат значения «null». Например, «$dateAsString = $booking->getStartDate()?->asDateTimeString()»;
Dəstək birlik növləri, iki və ya daha çox növün kolleksiyalarının müəyyən edilməsi (məsələn, “public function foo(Foo|Bar $input): int|float;”).
Dəstək atributlar Docblock sintaksisindən istifadə etmədən metadata (məsələn, növ məlumatı) siniflərə bağlamağa imkan verən (annotasiyalar).
Поддержка выражений uyğun, которые в отличие от switch могут возвращать значения, поддерживают комбинирование условий, используют строгое сравнение типов и не требуют указания «break».
Zəif Xəritə zibil yığımı zamanı qurban verilə bilən obyektlər yaratmaq (məsələn, lazımsız keşləri saxlamaq üçün).
Imkan obyektlər üçün “::class” ifadəsindən istifadə etməklə (get_class() çağırışının analoqu).
Imkan dəyişənlərə bağlı olmayan istisnaların tutma blokundakı təriflər.
Imkan funksiya parametrləri siyahısında sonuncu elementdən sonra vergülün qoyulması.
Yeni interfeys Simli sətirə çevrilə bilən hər hansı sətir növlərini və ya verilənləri müəyyən etmək üçün (bunun üçün __toString() metodu mövcuddur).
Yeni xüsusiyyət str_contains(), alt sətirin baş verməsini təyin etmək üçün strposun sadələşdirilmiş analoqu, həmçinin str_starts_with() və str_ends_with() funksiyaları sətrin əvvəlində və sonunda uyğunluqları yoxlamaq üçün.
Əlavə edilmiş xüsusiyyət fdiv(), sıfıra bölərkən xəta atmadan bölmə əməliyyatını yerinə yetirir.
Dəyişdi simli birləşmə məntiqi. Məsələn, 'echo "sum:" ifadəsi. $a + $b' əvvəllər 'echo ("sum: " . $a) + $b' kimi şərh edilmişdi və PHP 8-də 'echo "sum:" kimi qəbul ediləcək. ($a + $b)'.
Sıxılmış arifmetik və bit əməliyyatlarının yoxlanılması, məsələn, "[] % [42]" və "$object + 4" ifadələri xəta ilə nəticələnəcək.
Həyata keçirilən eyni dəyərlərin ardıcıllığının müxtəlif dövrlərdə qorunduğu sabit çeşidləmə alqoritmi.