
Den nye version indeholder mange nye funktioner, såsom egenskabshooks, asymmetrisk synlighed af egenskaber, opdatering af DOM API, forbedret ydeevne, fejlrettelser og meget mere.
Vigtige ændringer
- Egenskabshooks giver støtte til beregnede egenskaber, som kan forstås af IDE'er og statiske analyseværktøjer, uden at det er nødvendigt at skrive DocBlock-kommentarer, der måske ikke stemmer overens. Derudover muliggør de pålidelig forbehandling eller efterbehandling af værdier uden at skulle tjekke, om der findes en tilsvarende getter eller setter i klassen.
- Asymmetrisk synlighed af egenskaber kan nu kontrolleres uafhængigt af synligheden af egenskaberne, hvilket reducerer behovet for at bruge skabelonmetoder (getters) til at afsløre værdien af en egenskab uden at den kan ændres uden for klassen.
- Ny #[Deprecated] attribut udvider den eksisterende mekanisme til at erklære en entitet som forældet for brugerdefinerede funktioner, metoder og klassens konstanter.
- Nyt DOM API, som understøtter parsing af HTML5-dokumenter i henhold til standarderne, retter flere gamle fejl i DOM-adfærden og tilføjer flere funktioner, der gør arbejdet med dokumenter mere bekvemt. DOM API er tilgængeligt i Dom-navnerummet. Dokumenter, der bruger det nye DOM API, kan oprettes ved hjælp af klasserne DomHTMLDocument og DomXMLDocument.
- Nyt BcMathNumber objekt muliggør brug af objektorienteret stil og standard matematiske operatorer ved arbejde med tal med vilkårlig præcision. Disse objekter er uforanderlige og implementerer Stringable-grænsefladen, hvilket gør dem anvendelige i strengkontekster, f.eks. echo $num.
- Der er tilføjet funktioner: array_find(), array_find_key(), array_any() og array_all().
- Tilføjede underklasser PdoDblib, PdoFirebird, PdoMySql, PdoOdbc, PdoPgsql, PdoSqlite-drivere, der arver fra PDO.
- Egenskaber og metoder til det netop initialiserede objekt kan nu tilgås uden at indkapsle new-udtrykket i parenteser. Eksempel: new MyClass()->method() uden parenteser.
- Nye klasser, grænseflader og funktioner og meget mere…
Kilde: linux.org.ru
