On alanud PHP 8 beta-testimine

Esitletud PHP 8 uusima keele haru esimene beetaversioon on plaanitud vÀlja anda 26. novembril. Samuti on vÀlja antud parandavad versioonid PHP 7.4.9, 7.3.21 ja
7.2.33, kus on kÔrvaldatud kogunenud vead ja turvaaukud.

Peamised uuendused PHP 8:

  • Sissekasutamine JIT-kompilaatorit,, mille rakendamine parandab jĂ”udlust.
  • Tugi funktsioonide nimetud argumendid, mis vĂ”imaldavad funktsiooni argumente edastada nimede seotuse jĂ€rgi, st argumente saab edastada suvalises jĂ€rjekorras ning mÀÀrata valikulised argumendid. NĂ€iteks „array_fill(start_index: 0, num: 100, value: 50)”.
  • Meetodite kutsumisel on lubatud kasutada operaatorit „?“, mis vĂ”imaldab meetodi kutsumist algatada ainult siis, kui meetod on olemas, vĂ€ltides seelĂ€bi liigseid kontrollimist vÀÀrtuse „null“ tagastamisel. NĂ€iteks „$dateAsString = $booking->getStartDate()?->asDateTimeString()“;
  • Tugi liidestiile,, mis mÀÀratlevad kogusid kahest vĂ”i enamast tĂŒĂŒbist (nt "public function foo(Foo|Bar $input): int|float;").
  • Tugi atribuutide (annotatsioonide), mis vĂ”imaldavad siduda metaandmeid (nt tĂŒĂŒbine teave) klasside kĂŒlge ilma Docblocki sĂŒntaksita.
  • Toetatakse vĂ€ljendeid match, mis erinevalt switch-ist saavad tagastada vÀÀrtusi, toetavad tingimuste kombineerimist, kasutavad ranget tĂŒĂŒbi vĂ”rdlemist ja ei vaja „break“ mÀÀramist.

    $result = match($input) {
    0 => „hello“,
    ‘1’, ‘2’, ‘3’ => „world“,
    };

  • LĂŒhendatud sĂŒntaks klasside mÀÀratlemiseks, mis vĂ”imaldab konstruktorite ja omaduste mÀÀratlemise kombineerimist.
  • Uus tagastatav tĂŒĂŒp — static.
  • Uus tĂŒĂŒp — mixed,, mida saab kasutada funktsiooni parameetrite mÀÀratlemiseks, mis vĂ”tavad erinevaid tĂŒĂŒpe.
  • MĂ€rkuse throw erindite töötlemiseks.
  • WeakMap objektide loomiseks, mida vĂ”ib prĂŒgi kogumise ajal Ă€ra visata (nt valikulise vahemĂ€lu hoidmiseks).
  • VĂ”imalus kasutades vĂ€ljendit "::class" objektide jaoks (samavÀÀrne get_class() kutsumisega).
  • VĂ”imalus erindite mÀÀratlemiseks catch plokis, mis ei ole seotud muutujatega.
  • VĂ”imalus komma jĂ€tmise vĂ”imaldamiseks parameetrite loendis viimasest elemendist.
  • Uus liides Stringable iga stringi tĂŒĂŒbi vĂ”i andmete tuvastamiseks, mida saab stringiks muuta (kelle jaoks on saadaval meetod __toString()).
  • Uus funktsioon str_contains(),lihtsustatud vaste strpos'ile alamhulga mÀÀramiseks, samuti funktsioonid str_starts_with() ja str_ends_with() stringi alguses ja lĂ”pus vastavuse kontrollimiseks.
  • Lisatud on funktsioon fdiv(),, mis teostab jagamisoperatsiooni, ilma et tekiks viga jagamisel nulliga.
  • Muutunud 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)’.
  • Tugevdatud aritmeetika ja bititehete kontroll, nĂ€iteks vĂ€ljendid «[] % [42]» ja «$object + 4» toovad kaasa vea.
  • Teostatud stabiilne sorteerimisalgoritm, kus erinevatel kĂ€ivitustel sĂ€ilitatakse sama vÀÀrtuse jĂ€rjekord.
  • Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster