Telegram Group & Telegram Channel
Что нового в РНР 8?

🚀 PHP 8.0

JIT-компиляция: Just-In-Time компилятор улучшает производительность, особенно в вычислительных задачах.

Атрибуты (аннотации): Позволяют добавлять метаданные к классам, методам и свойствам, улучшая читаемость и поддержку кода.

Сопоставление с образцом (match expression): Более строгая и удобная альтернатива конструкции switch.

Промоция свойств конструктора: Уменьшает количество кода при объявлении свойств в конструкторе.

Объединённые типы (union types): Позволяют указывать несколько типов для параметров и возвращаемых значений.

Оператор nullsafe (?->): Упрощает работу с возможными null значениями, предотвращая ошибки.

Новые строки функций: str_contains(), str_starts_with(), str_ends_with() — для удобной работы со строками.

Интерфейс Stringable: Упрощает работу с объектами, которые могут быть приведены к строке.

Функция get_debug_type(): Предоставляет точный тип переменной для отладки.​

🔧 PHP 8.1

Перечисления (enums): Позволяют создавать наборы констант с типовой безопасностью.

Только для чтения свойства (readonly): Свойства, которые можно инициализировать только один раз.

Тип never: Указывает, что функция никогда не возвращает значение (например, всегда выбрасывает исключение).

Синтаксис для первого класса callable: Упрощает создание и использование функций как объектов.

Fibers: Позволяют реализовывать кооперативную многозадачность, полезно для асинхронного кода.​

🧪 PHP 8.2

Типы null, false, true как отдельные типы: Улучшает типовую безопасность.

Динамические свойства устарели: Предотвращает ошибки при случайном добавлении свойств в объекты.

Атрибут #[SensitiveParameter]: Помечает параметры, содержащие чувствительную информацию, для предотвращения их логирования.

🔍 PHP 8.3

Типизация констант классов: Позволяет задавать типы для констант внутри классов.

Атрибут #[\Override]: Указывает, что метод переопределяет родительский.

Глубокое копирование только для чтения свойств: Обеспечивает корректное поведение при копировании объектов.

Новые функции для работы с случайными значениями: Упрощают генерацию случайных данных.

🧩 PHP 8.4

Хуки свойств (Property Hooks): Возможность определять логику для геттеров и сеттеров непосредственно в свойстве, что упрощает код и уменьшает количество шаблонного кода. ​

Асимметричная видимость (Asymmetric Visibility): Позволяет задавать разные уровни доступа для чтения и записи свойств, например, сделать свойство доступным только для чтения. ​

Инстанцирование классов без скобок: Теперь можно вызывать методы сразу после создания объекта без необходимости оборачивать конструкцию в дополнительные скобки. ​

Новые функции для работы с массивами: array_find(), array_find_key(), array_any(), array_all() упрощают поиск и проверку элементов в массивах. ​

Поддержка HTML5 в расширении DOM: Расширение DOM теперь поддерживает HTML5, улучшая работу с современными веб-страницами. ​

Новые функции для работы со строками: mb_trim(), mb_ucfirst(), mb_lcfirst() предоставляют дополнительные возможности для обработки многобайтовых строк.

Поддержка HTTP/3 в cURL: Добавлены константы CURL_HTTP_VERSION_3 и CURL_HTTP_VERSION_3ONLY для работы с протоколом HTTP/3. ​

Новые методы для DateTimeImmutable: Методы createFromTimestamp() и get/setMicrosecond() облегчают работу с временными метками и микросекундами.



tg-me.com/php_interview_lib/759
Create:
Last Update:

Что нового в РНР 8?

🚀 PHP 8.0

JIT-компиляция: Just-In-Time компилятор улучшает производительность, особенно в вычислительных задачах.

Атрибуты (аннотации): Позволяют добавлять метаданные к классам, методам и свойствам, улучшая читаемость и поддержку кода.

Сопоставление с образцом (match expression): Более строгая и удобная альтернатива конструкции switch.

Промоция свойств конструктора: Уменьшает количество кода при объявлении свойств в конструкторе.

Объединённые типы (union types): Позволяют указывать несколько типов для параметров и возвращаемых значений.

Оператор nullsafe (?->): Упрощает работу с возможными null значениями, предотвращая ошибки.

Новые строки функций: str_contains(), str_starts_with(), str_ends_with() — для удобной работы со строками.

Интерфейс Stringable: Упрощает работу с объектами, которые могут быть приведены к строке.

Функция get_debug_type(): Предоставляет точный тип переменной для отладки.​

🔧 PHP 8.1

Перечисления (enums): Позволяют создавать наборы констант с типовой безопасностью.

Только для чтения свойства (readonly): Свойства, которые можно инициализировать только один раз.

Тип never: Указывает, что функция никогда не возвращает значение (например, всегда выбрасывает исключение).

Синтаксис для первого класса callable: Упрощает создание и использование функций как объектов.

Fibers: Позволяют реализовывать кооперативную многозадачность, полезно для асинхронного кода.​

🧪 PHP 8.2

Типы null, false, true как отдельные типы: Улучшает типовую безопасность.

Динамические свойства устарели: Предотвращает ошибки при случайном добавлении свойств в объекты.

Атрибут #[SensitiveParameter]: Помечает параметры, содержащие чувствительную информацию, для предотвращения их логирования.

🔍 PHP 8.3

Типизация констант классов: Позволяет задавать типы для констант внутри классов.

Атрибут #[\Override]: Указывает, что метод переопределяет родительский.

Глубокое копирование только для чтения свойств: Обеспечивает корректное поведение при копировании объектов.

Новые функции для работы с случайными значениями: Упрощают генерацию случайных данных.

🧩 PHP 8.4

Хуки свойств (Property Hooks): Возможность определять логику для геттеров и сеттеров непосредственно в свойстве, что упрощает код и уменьшает количество шаблонного кода. ​

Асимметричная видимость (Asymmetric Visibility): Позволяет задавать разные уровни доступа для чтения и записи свойств, например, сделать свойство доступным только для чтения. ​

Инстанцирование классов без скобок: Теперь можно вызывать методы сразу после создания объекта без необходимости оборачивать конструкцию в дополнительные скобки. ​

Новые функции для работы с массивами: array_find(), array_find_key(), array_any(), array_all() упрощают поиск и проверку элементов в массивах. ​

Поддержка HTML5 в расширении DOM: Расширение DOM теперь поддерживает HTML5, улучшая работу с современными веб-страницами. ​

Новые функции для работы со строками: mb_trim(), mb_ucfirst(), mb_lcfirst() предоставляют дополнительные возможности для обработки многобайтовых строк.

Поддержка HTTP/3 в cURL: Добавлены константы CURL_HTTP_VERSION_3 и CURL_HTTP_VERSION_3ONLY для работы с протоколом HTTP/3. ​

Новые методы для DateTimeImmutable: Методы createFromTimestamp() и get/setMicrosecond() облегчают работу с временными метками и микросекундами.

BY Библиотека собеса по PHP | вопросы с собеседований


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/php_interview_lib/759

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

A project of our size needs at least a few hundred million dollars per year to keep going,” Mr. Durov wrote in his public channel on Telegram late last year. “While doing that, we will remain independent and stay true to our values, redefining how a tech company should operate.

The global forecast for the Asian markets is murky following recent volatility, with crude oil prices providing support in what has been an otherwise tough month. The European markets were down and the U.S. bourses were mixed and flat and the Asian markets figure to split the difference.The TSE finished modestly lower on Friday following losses from the financial shares and property stocks.For the day, the index sank 15.09 points or 0.49 percent to finish at 3,061.35 after trading between 3,057.84 and 3,089.78. Volume was 1.39 billion shares worth 1.30 billion Singapore dollars. There were 285 decliners and 184 gainers.

telegram from us


Telegram Библиотека собеса по PHP | вопросы с собеседований
FROM USA