Bidalita PHP 8 programazio-lengoaiaren adar berriaren lehen beta bertsioa. Azaroaren 26rako dago aurreikusita. Aldi berean, PHP 7.4.9, 7.3.21 eta XNUMX bertsio zuzentzaileak
7.2.33, metatutako akatsak eta ahuleziak ezabatu zituena.
Lagundu izendatutako funtzioen argumentuak, izenekin erlazionatutako funtzioari balioak pasatzeko aukera emanez, hau da. Argumentuak edozein ordenatan pasa ditzakezu eta aukerako argumentuak defini ditzakezu. Adibidez, "array_fill(hasi_indizea: 0, num: 100, balioa: 50)".
Metodoei deitzean onartzen β?β operadorea erabiliz, metodoa badago soilik dei bat hasteko aukera ematen duena, βnuluaβ balioa itzultzeko beharrezkoak ez diren egiaztapenak saihesten dituena. Adibidez, "$dateAsString = $booking->getStartDate()?->asDateTimeString()";
Lagundu sindikatu motak, bi motatako edo gehiagoko bildumak definituz (adibidez, βfuntzio publikoa foo(Foo|Bar $sarrera): int|float;β).
Lagundu atributuak Docblock sintaxia erabili gabe klaseetara metadatuak (adibidez, motaren informazioa) lotzea ahalbidetzen duten (oharpenak).
Adierazpen-laguntza partidaren, zeinak, switch ez bezala, balioak itzul ditzake, konbinazio-baldintzak onartzen ditu, mota konparaketa zorrotzak erabiltzen ditu eta ez du "haustura" zehaztapenik behar.
WeakMap zabor bilketan sakrifikatu daitezkeen objektuak sortzeko (adibidez, beharrezkoak ez diren cacheak gordetzeko).
Aukera Objektuetarako β::classβ esamoldea erabiliz (get_class() deitzearen antzekoa).
Aukera aldagaiei lotuta ez dauden salbuespenen catch blokeko definizioak.
Aukera funtzio-parametroen zerrendako azken elementuaren ondoren koma utziz.
Interfaze berria Harizkoa kate batean bihur daitezkeen edozein kate mota edo datu identifikatzeko (horretarako __toString() metodoa eskuragarri dago).
Ezaugarri berria str_contains(), azpikate baten agerraldia zehazteko strpos-en analogo sinplifikatua, baita str_starts_with() eta str_ends_with() funtzioak ere, kate baten hasieran eta amaieran bat datozenak egiaztatzeko.
Ezaugarri gehitua fdiv(), zatiketa eragiketa bat egiten duena zeroz zatitzean errorerik bota gabe.
Aldatua kateak elkartzeko logika. Adibidez, 'echo "sum:" esamoldea. $a + $b' 'oihartzuna' gisa interpretatu zen lehenago ("sum: " . $a) + $b', eta PHP 8-n 'echo "sum: " gisa tratatuko da. ($a + $b)'.
Estu eragiketa aritmetikoak eta bitartekoak egiaztatzeak, adibidez, "[] % [42]" eta "$objektua + 4" esamoldeek errore bat eragingo dute.
Inplementatua ordenatzeko algoritmo egonkorra, zeinetan balio berdinen ordena exekuzio ezberdinetan gordetzen den.