# PHP 8.0 sa 8.5: l-aktar novitajiet importanti

> Novitajiet ta' PHP 8 minn 8.0 sa 8.5: l-aktar funzjonijiet importanti għal kull verżjoni, eżempji, deprekazzjonijiet b'riskju ta' aġġornament u r-rilevanza għas-sigurtà.

Sors: https://phpsos.de/mt/php/php-8-neuerungen/  
Stat: 25/10/2026  
Fornitur: PHP SOS, Għajnuna ta' emerġenza għal PHP u sigurtà tas-server. Għajnuna immedjata fuq WhatsApp: https://wa.me/491736494914?text=Bongu%20PHP%20SOS%2C%20g%C4%A7andna%20b%C5%BConn%20g%C4%A7ajnuna%20bis-server%20tal-PHP%20tag%C4%A7na.%20Kumpanija%3A%20%E2%80%A6%20Websajt%3A%20%E2%80%A6

**Fil-qosor:** PHP 8.0 (Novembru 2020) ġabet argumenti msemmija, attributi, tipi union, `match`, l-operatur nullsafe u kompilatur JIT. Wara segwew kull sena: 8.1 b'enums u fibers, 8.2 b'klassijiet readonly, 8.3 b'kostanti tal-klassijiet bit-tipi, 8.4 b'property hooks u 8.5 b'operatur pipe u estensjoni URI. Kull verżjoni tiddeprekata wkoll affarijiet qodma. Fl-aġġornament għalhekk jgħoddu t-testijiet, u għas-sigurtà jgħodd fuq kollox li tħaddmu fergħa appoġġjata bl-aħħar stat tal-patches.

## In-novitajiet ta' PHP 8 fil-qosor

It-tabella tiġbor il-punti ewlenin tal-paġni tar-rilaxx ta' php.net. Dati tal-ewwel pubblikazzjoni skont php.net.

| Verżjoni | Ħarġet | L-aktar novitajiet importanti | Għażla ta' deprekazzjonijiet u kisriet |
|---|---|---|---|
| 8.0 | 26/11/2020 | argumenti msemmija, attributi, Constructor Property Promotion, tipi union, `match`, `?->`, JIT | `0 == 'foobar'` issa huwa `false`, żbalji tat-tipi minflok twissijiet |
| 8.1 | 25/11/2021 | enums, proprjetajiet readonly, First-Class-Callables `strlen(...)`, `new` fl-inizjalizzaturi, tipi intersection, `never`, fibers | – |
| 8.2 | 08/12/2022 | klassijiet readonly, tipi DNF, `null`/`false`/`true` bħala tipi, estensjoni Random, kostanti fit-traits, `#[\SensitiveParameter]` | proprjetajiet dinamiċi ddeprekati |
| 8.3 | 23/11/2023 | kostanti tal-klassijiet bit-tipi, `#[\Override]`, `json_validate()`, `mb_str_pad()`, `php -l` għal diversi fajls | – |
| 8.4 | 21/11/2024 | property hooks, viżibbiltà asimmetrika, `#[\Deprecated]`, API DOM ġdida b'HTML5, `BcMath\Number`, `array_find()`, lazy objects | parametri nullable impliċiti ddeprekati; IMAP, OCI8, PDO_OCI, pspell għal PECL |
| 8.5 | 20/11/2025 | operatur pipe, estensjoni URI, Clone With, `#[\NoDiscard]`, `array_first()`/`array_last()` | operatur backtick iddeprekat, `disable_classes` imneħħi |

## PHP 8.0 u 8.1: il-pass il-kbir

PHP 8.0 għamlet il-lingwa b'mod sensibbli aktar stretta u aktar espressiva. Skont il-paġna tar-rilaxx, il-funzjonijiet interni issa jitfgħu b'mod konsistenti `TypeError` jew `ValueError`, minflok ma jagħtu biss twissijiet. It-tqabbil bejn numri u ktajjen ta' karattri isegwi regoli aktar nodfa.

```php
<?php
// PHP 8.0: match jqabbel b'mod strett u ma jeħtieġx break
$status = 404;
echo match (true) {
    $status >= 500 => 'Serverfehler',
    $status >= 400 => 'Anfragefehler',
    default        => 'in Ordnung',
};

// PHP 8.0: operatur nullsafe
$land = $bestellung?->kunde?->adresse?->land;
```

PHP 8.1 ġabet enums, jiġifieri tipi ta' enumerazzjoni b'valuri fissi, u proprjetajiet readonly li jistgħu jiġu ssettjati darba biss:

```php
<?php
enum Rolle: string {
    case Leser = 'leser';
    case Redakteur = 'redakteur';
    case Admin = 'admin';
}

final class Benutzer {
    public function __construct(
        public readonly string $name,
        public readonly Rolle $rolle,
    ) {}
}

$b = new Benutzer('Erika', Rolle::from('redakteur'));
```

`Rolle::from()` jitfa' żball għal valuri mhux magħrufa. Dan jipprevjeni li ktajjen arbitrarji ta' karattri minn formoli jgħaddu bħala rwol. Min minflok żball jeħtieġ valur vojt juża `Rolle::tryFrom()`, li jirritorna `null` għal valuri mhux magħrufa.

Ġodda wkoll f'8.1 huma l-fibers, bażi għal proċessi konkorrenti li fuqha jibnu libreriji għal ipproċessar asinkroniku. Fit-tħaddim normali ta' websajt wieħed jinduna ftit bihom, fi frameworks moderni u queues iżjed.

## PHP 8.2 u 8.3: tindif u sigurtà

PHP 8.2 iddeprekat proprjetajiet dinamiċi. Min jassenja lil oġġett proprjetà mhux iddikjarata jirċievi avviż; b'`#[\AllowDynamicProperties]` dan jista' jitħalla għal klassijiet individwali. Plugins eqdem għalhekk spiss joħolqu ħafna messaġġi fil-log.

Interessanti għas-sigurtà huma l-estensjoni ġdida Random, li r-randomizer standard tagħha, skont il-paġna tar-rilaxx, juża ġeneratur kriptografikament sigur ta' numri każwali, u l-attribut `#[\SensitiveParameter]`, li jaħbi valuri bħal passwords fl-stacktraces. Aktar dwar valuri każwali siguri taħt [Numri każwali u tokens siguri f'PHP](https://phpsos.de/mt/blog/sichere-tokens-php/).

PHP 8.3 żiedet kostanti tal-klassijiet bit-tipi, l-attribut `#[\Override]` kontra żbalji tat-tajpjar meta jiġu sorpassati metodi u `json_validate()`, li jivverifika JSON mingħajr ma jiddekodifikah kompletament.

## PHP 8.4 u 8.5: għodod moderni tal-lingwa

PHP 8.4 introduċiet property hooks, jiġifieri loġika direttament fuq il-proprjetajiet, u viżibbiltà asimmetrika bħal `public private(set)`. Żiedu wkoll API DOM ġdida b'appoġġ għal HTML5 u funzjonijiet bħal `array_find()`, `array_any()` u `array_all()`. Skont il-paġna tar-rilaxx, l-estensjonijiet IMAP, OCI8, PDO_OCI u pspell ġew imċaqalqa mill-qalba għal PECL. Applikazzjonijiet li jużaw pereżempju IMAP imbagħad jeħtieġu pakkett separat.

PHP 8.5 ġabet l-operatur pipe, li jorbot sejħiet minn xellug għal lemin:

```php
<?php
$slug = '  Neue Produkte 2026  '
    |> trim(...)
    |> strtolower(...)
    |> (fn(string $s): string => str_replace(' ', '-', $s));
// Riżultat: "neue-produkte-2026"
```

Ġdida wkoll hija estensjoni URI li tfarrak indirizzi skont RFC 3986 u l-istandard WHATWG-URL. Dan huwa rilevanti għas-sigurtà, għax URLs ippruċessati b'mod inkonsistenti huma kawża magħrufa ta' verifiki evitati. L-operatur backtick bħala forma qasira ta' `shell_exec()` huwa iddeprekat, is-setting `disable_classes` ġie mneħħi. Min użah għandu jadatta t-tisħiħ tiegħu.

## Novitajiet, aġġornamenti u PHP2Shell

Funzjonijiet ġodda tal-lingwa ma jagħlqux vulnerabbiltajiet fl-interpretatur. Kontra PHP2Shell jgħin biss l-aħħar stat tal-patches tal-fergħa rispettiva: 8.5.12, 8.4.27, 8.3.36 jew 8.2.35. Għal PHP 8.1 u 8.0 m'hemmx aktar aġġornamenti uffiċjali. Min hu mwaħħal hemmhekk irid jaġġorna, u hawnhekk in-novitajiet jgħinu ftit, il-kisriet ferm.

Triq sigura ta' aġġornament fi ħames passi:

1. Stabbilixxu l-verżjoni fil-mira, f'konformità mar-rekwiżiti tas-sistema tal-manifattur u maċ-[ċiklu tar-rilaxx](https://phpsos.de/mt/php/release-zyklus/).
2. Ġibu d-dipendenzi permezz ta' Composer u l-plugins fuq stati kompatibbli.
3. Ivverifikaw il-kodiċi b'analiżi statika u testijiet kontra l-verżjoni fil-mira.
4. Ipprovawh f'ambjent tat-test b'kopja tad-dejta tal-produzzjoni, evalwaw il-logs għal deprekazzjonijiet.
5. Aqilbu, erġgħu ibdew il-proċessi kollha ta' PHP u ddokumentaw l-istat.

Sfond dwar it-tipi jagħti [It-tip sistema ta' PHP](https://phpsos.de/mt/php/typsystem/).

## Kif jgħin PHP SOS konkretament?

- **Nivverifikaw il-kompatibbiltà:** Neżaminaw il-kodiċi u l-estensjonijiet tagħkom għal kisriet mal-verżjoni fil-mira.
- **Nwettqu l-aġġornament:** Bil-[migrazzjoni għal verżjoni appoġġjata ta' PHP](https://phpsos.de/mt/leistungen/php-migration-legacy/) inġibu l-applikazzjonijiet fuq verżjoni ogħla, ittestjati.
- **Nadattaw it-tisħiħ:** Nissostitwixxu settings imneħħija bħal `disable_classes` b'alternattivi effettivi.
- **Nżommu l-istat tal-patches:** Wara l-aġġornament inżommu l-fergħa aġġornata u niddokumentaw kull restart.


## Mistoqsijiet frekwenti

**Liema verżjoni ta' PHP 8 għandi nuża llum?**  
Għal proġetti ġodda PHP 8.4 jew 8.5, għax huma appoġġjati l-itwal: 8.4 sa tmiem l-2028, 8.5 sa tmiem l-2029. Id-deċiżiv hu x'tappoġġja l-applikazzjoni tagħkom skont ir-rekwiżiti tas-sistema tal-manifattur. PHP 8.2 tintemm fil-31 ta' Diċembru 2026.

**X'jinkiser l-aktar spiss meta wieħed jaqleb minn PHP 7.4 għal PHP 8?**  
Spiss ikunu kontrolli aktar stretti tat-tipi: funzjonijiet interni f'PHP 8 jitfgħu TypeError jew ValueError minflok ma jagħtu biss twissijiet. Jidhru wkoll tqabbil mibdul bejn numri u ktajjen ta' karattri. Analiżi statika u testijiet jiskopru l-biċċa l-kbira minn qabel.

**Il-JIT jagħmel il-websajt tiegħi aktar mgħaġġla?**  
Il-biċċa l-kbira tal-ħin ftit. Skont il-paġna tar-rilaxx ta' PHP 8.0, il-prestazzjoni ta' applikazzjonijiet tipiċi tal-web hija madwar fil-livell ta' PHP 7.4, filwaqt li kompiti li jeħtieġu ħafna kalkolu jistgħu jibbenefikaw b'mod ċar. Minn PHP 8.4 il-JIT huwa mitfi b'mod predefinit.

**Liema novitajiet jgħinu s-sigurtà?**  
Fost oħrajn l-estensjoni ġdida Random f'PHP 8.2 b'standard sigur b'mod kriptografiku, l-attribut SensitiveParameter kontra passwords fl-stacktraces, enums u proprjetajiet readonly għal dejta aktar inekwivoka kif ukoll l-iżbalji tat-tipi aktar konsistenti minn PHP 8.0.

## Sorsi

- [php.net: Rilaxx ta' PHP 8.0](https://www.php.net/releases/8.0/en.php)
- [php.net: Rilaxx ta' PHP 8.4](https://www.php.net/releases/8.4/en.php)
- [php.net: Rilaxx ta' PHP 8.5](https://www.php.net/releases/8.5/en.php)
- [PHP 8 ChangeLog](https://www.php.net/ChangeLog-8.php)
- [php.net: Verżjonijiet appoġġjati](https://www.php.net/supported-versions.php)
