den fÞrste beta-utgivelsen av den nye versjonen av programmeringssprÄket PHP 8. Utgivelsen er planlagt til 26. november. Samtidig er det laget korrigerende utgivelser av PHP 7.4.9, 7.3.21 og
7.2.33, som retter opp akkumulative feil og sÄrbarheter.
Viktige PHP 8:
- , hvis bruk vil Ăžke ytelsen.
- navngitte argumenter for funksjoner, som tillater at verdier kan sendes til funksjonen knyttet til navn, dvs. argumenter kan sendes i vilkÄrlig rekkefÞlge og valgfrie argumenter kan defineres. For eksempel, «array_fill(start_index: 0, num: 100, value: 50)».
- NÄr metoder kalles Ä bruke operatoren «?», som lar deg initiere et kall bare hvis metoden er tilstede, noe som unngÄr unÞdvendige sjekker for returverdi «null». For eksempel, «$dateAsString = $booking->getStartDate()?->asDateTimeString()»;
- StÞtte , som definerer samlinger av to eller flere typer (f.eks. «public function foo(Foo|Bar $input): int|float;»).
- StĂžtte (notasjoner), som lar deg knytte metadata (for eksempel typeinformasjon) til klasser uten Ă„ bruke Docblock-syntaks.
- StÞtte for uttrykk , som i motsetning til switch kan returnere verdier, stÞtter kombinasjon av betingelser, bruker streng type-sammenligning og krever ikke spesifisering av «break».
$result = match($input) {
0 => «hello»,
â1â, â2â, â3â => «world»,
}; - for klassetilnÊrminger, som tillater sammenslÄing av konstruktÞr- og egenskapsdefinisjon.
- Ny type returverdier â .
- Ny type â , som kan brukes til Ă„ definere funksjonens innholdsparametere av forskjellige typer.
- Uttrykk for behandling av unntak.
- for Ă„ lage objekter som kan bli ofret ved sĂžppeloppsamling (for eksempel for lagring av valgfrie hurtigbuffer).
- bruk av uttrykket «::class» for objekter (tilsvarende Ä kalle get_class()).
- definering i catch-blokker av unntak som ikke er knyttet til variabler.
- leaving a comma after the last element in a function parameter list.
- Ny grensesnitt for identifisering av enhver str Type eller data som kan konverteres til en streng (for hvilke metoden __toString() er tilgjengelig).
- Ny funksjon , en forenklet analog av strpos for Ă„ bestemme innholdet i en understreng, samt funksjonene str_starts_with() og str_ends_with() for Ă„ sjekke samsvar i begynnelsen og slutten av strengen.
- Legg til funksjon , som utfĂžrer divisjonsoperasjonen uten Ă„ gi feil ved deling med null.
- logikken for sammenknytting av strenger. For eksempel ble uttrykket âecho «sum: » . $a + $bâ tidligere tolket som âecho («sum: » . $a) + $bâ, mens det i PHP 8 vil bli behandlet som âecho «sum: » . ($a + $b)â.
- kontroll av aritmetiske og bitoperasjoner, for eksempel uttrykkene «[] % [42]» og «$object + 4» vil fÞre til feil.
- et stabilt sorteringsalgoritme, som i forskjellige kjĂžringer bevarer rekkefĂžlgen av like verdier.
Kilde: opennet.ru
