programmeerimiskeele PHP 8 esimene beetaversioon. VÀljalaskmine on planeeritud 26. novembrile. Samuti on vÀlja antud parandavaid versioone PHP 7.4.9, 7.3.21 ja
7.2.33, milles on kÔrvaldatud kogunenud vead ja haavatavused.
Peamised PHP 8:
- , mille rakendamine vÔimaldab suurendada jÔudlust.
- nimetatud funktsioonide argumendid, mis vĂ”imaldavad funktsiooni vÀÀrtusi edastada sidudes need nimedega, st argumendid saab edastada suvalises jĂ€rjekorras ja mÀÀrata valikulised argumendid. NĂ€iteks âarray_fill(start_index: 0, num: 100, value: 50)â.
- Meetodite kutsumise korral kasutada operaatorit â?â, mis vĂ”imaldab algatada kutsumise ainult siis, kui meetod on olemas, vĂ€ltides seelĂ€bi tarbetute kontrollide tegemist, et tagastada ânullâ. NĂ€iteks â$dateAsString = $booking->getStartDate()?->asDateTimeString()â;
- Toetamine , mis mÀÀratlevad kollektsioonid, mis koosnevad kahest vĂ”i enamast tĂŒĂŒbist (nt âpublic function foo(Foo|Bar $input): int|float;â).
- Toetamine (annotatsioonide), mis vĂ”imaldavad siduda metaandmeid (nt teavet tĂŒĂŒpide kohta) klassidega ilma Docblock sĂŒntaksit kasutamata.
- Toetatakse vĂ€ljendeid , mis erinevalt switchist vĂ”ivad tagastada vÀÀrtusi, toetavad tingimuste kombineerimist, kasutavad ranget tĂŒĂŒpide vĂ”rdlemist ning ei vaja âbreakâ mĂ€rkimist.
$result = match($input) {
0 => âtereâ,
â1â, â2â, â3â => âmaailmâ,
}; - klasside mÀÀratlemiseks, mis vÔimaldab kombineerida konstruktori ja omaduste mÀÀratlemise.
- Uus tagastatavate vÀÀrtuste tĂŒĂŒp â .
- Uus tĂŒĂŒp â , mida saab kasutada funktsioonile erinevate tĂŒĂŒpide parameetrite mÀÀratlemiseks.
- VÀljend erandite töötlemiseks.
- objektide loomiseks, millest on vĂ”imalik loobuda prĂŒgi kogumise ajal (nĂ€iteks valikuliste vahetaminekube hoidmiseks).
- vĂ€ljendi â::classâ kasutamine objektide jaoks (sarnane get_class() vĂ€ljakutsetega).
- erandite mÀÀratlemine catch plokis, mida ei seostata muutujatega.
- viimane element funktsiooni parameetrite nimekirjas koma sĂŒmboli jĂ€tmine.
- Uus liides kĂ”ikide stringi tĂŒĂŒpide vĂ”i andmete identifitseerimiseks, mida saab muuta stringiks (kellel on meetod __toString()).
- Uus funktsioon , lihtsustatud analoog strpos-st, et mÀÀrata alammÀngu esinemist ning funktsioonid str_starts_with() ja str_ends_with(), et kontrollida vastavust stringi alguses ja lÔpus.
- Lisa funktsionaalsus , teostab jagamistehte, ilma et tekiks viga jagamisel nulliga.
- stringide ĂŒhendamise loogika. NĂ€iteks vĂ€ljend âecho «sum: » . $a + $bâ tĂ”lgendati varem kui âecho («sum: » . $a) + $bâ, kuid PHP 8-s töödeldakse seda kui âecho «sum: » . ($a + $b)â.
- aritmeetiliste ja bititegevuste kontroll, nÀiteks vÀljendid «[] % [42]» ja «$object + 4» pÔhjustavad vea.
- stabiilne sortimise algoritm, kus erinevate kÀivituste ajal sÀilitatakse sama vÀÀrtuse jÀrjestus.
Allikas: opennet.ru
