Megkezdődött a PHP 8.4 alfa tesztelése

Bemutatták a PHP 8.4 programozási nyelv új ágának első alfa kiadását. A kiadás időpontja november 21. A PHP 8.4-ben már tesztelhető vagy tervezett főbb újdonságok:

  • Újdonság a tulajdonságokhoz (property hook) kapcsolódó kezelők támogatása, melyek lehetővé teszik, hogy új logikát adjunk hozzá, amely végrehajtódik a objektum tulajdonságainak módosításakor vagy elérésekor, anélkül, hogy a __get és __set általános funkciók segítségével olvasási és írási műveleteket kellene elfogni, és anélkül, hogy további wrapper metódusokat kellene létrehozni. A tulajdonságok kezelőinek alkalmazása lehetővé teszi a kód mennyiségének jelentős csökkentését, és egyszerűsíti a tulajdonságokkal való munka viselkedésének felülbírálását, saját kezelő hozzárendelésével minden egyes tulajdonsághoz.class User { public string $name { set { if (strlen($value) === 0) { throw new ValueError("A név nem lehet üres"); } $this->name = $value; } }public function __construct(string $name) { $this->name = $name; } }
  • Megengedett módszerek hivatkozásainak megadása a "new" szerkezetben, zárójelek nélkül, tehát a "$name = (new MyClass())->method()" helyett most már írható "$name = new MyClass()->method()".
  • A JIT fordítót irányító "opcache.jit_buffer_size" általános paramétere helyett bevezetésre került az "opcache.jit" és az "opcache.jit_buffer_size" paraméterek. A JIT letiltásához most már "opcache.jit=disable" lehet írni a "opcache.jit_buffer_size=0" helyett. Ezen kívül változtatásokat hajtottak végre, amelyek csökkentik a memóriahasználatot és növelik a JIT teljesítményét bizonyos helyzetekben.
  • Elavultnak nyilvánították azt a viselkedést, amelyben a null értéket alapértelmezett értékű függvényparaméterekhez automatikusan engedélyezték. Ahhoz, hogy ilyen paraméterek null értéket is felvehessenek, most már kifejezett "?" előtag megadása szükséges. Például a "function save(Book $book = null) {}" helyett már "function save(?Book $book = null) {}"-t kell írni.
  • Megvalósult a \Dom\HTMLDocument osztály, amely támogatja a HTML5 markup helyes parsolását.
  • Bevezetésre került a request_parse_body() funkció, amely HTTP kérések feldolgozására szolgál multipart/form-data (RFC1867) tartalom típussal.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster