Nowości w PHP 8.2

Bartosz Stefanicki 2 sierpnia 2022

Nowości w PHP 8.2

PHP w wersji 8.2 zostanie wydane 24 listopada 2022 roku. Sprawdźmy zatem co nowego pokaże się tym razem.

1. Nowe typy zwracanych danych: true, false, null

Przed wersją PHP 8.2 możliwe jest zwracanie danych w łączonych postaciach (unions), np. ?string. Wówczas metoda może zwrócić string lub null. PHP 8.2 wprowadza nowe typy zwracanych danych: true, false i null.

function testMethod(): null
{
    return null;
} 

function testMethod(): true
{
    return true;
} 

2. Klasy tylko do odczytu (readonly classes)

Wersja PHP 8.1 wprowadziła modyfikator readonly do właściwości klas. Wersja PHP 8.2 wprowadza ten modyfikator do oznaczenia klasy, dzięki czemu można skrócić zapis i nie oznaczać po kolei wszystkich właściwości klas jako readonly.

class User
{
    public function __construct(
        public readonly string $firstName,
        public readonly integer $status,
        public readonly DateTime $createdAt,
    ) {}
}

Wersja w PHP 8.2 może wyglądać następująco:

readonly class User
{
    public function __construct(
        public string $firstName,
        public integer $status,
        public DateTime $createdAt,
    ) {}
}

3. Wycofanie dynamicznych właściwości

PHP 8.2 wycofuje dynamiczne właściwości w klasach. Od PHP 8.2 wyświetlane będzie ostrzeżenie E_DEPRECATED, od wersji 9.0 wyrzucany będzie wyjątek typu Error.

Ostrzeżenie do wersji PHP 9.0 można ukryć za pomocą atrybutu #[AllowDynamicProperties]. Przykład z RFC:

class User {
    public $name;
}

$user = new User();

// Assigns declared property User::$name.
$user->name = 'foo';

// Oops, a typo:
$user->nane = 'foo';

4. Wycofanie utf8_encode() i utf8_decode()

PHP 8.2 wycofuje utf8_encode() i utf8_decode(). Konwertowały one pomiędzy kodowaniem znaków ISO-8859-1 a UTF-8. Próba ich wykorzystania wywoła poniższy błąd:

    Deprecated: Function utf8_encode() is deprecated
    Deprecated: Function utf8_decode() is deprecated

Wskazywana alternatywa to wykorzystanie mb_convert_encoding().

Data publikacji: 01.08.2022 r. Tagi: hosting, php, skrypty, top10. Źródło obrazka porady: Pixabay.

Szukasz hostingu?

Jest dużo firm oferujących hosting, ale którą wybrać? Przedstawiamy zestawienie najciekawszych propozycji i ranking hostingów (Sierpień 2022).

Komentarze

Statystyki

  • 182

    Liczba porad
  • 1 808

    Liczba komentarzy
  • 5

    Narzędzi online

© 2005-2022 itporady.pl. Wszystkie prawa zastrzeżone.

Używamy informacji zapisanych za pomocą cookies i podobnych technologii m.in. w celach reklamowych, statystycznych oraz dostosowania naszych serwisów do indywidualnych potrzeb użytkowników.