PHP 8.3 akan dikemas kini pada 23 November 2023. Ia akan menambah pemalar kelas yang ditaip, fungsi pembantu baharu untuk json_validate untuk menyemak muatan json, dan beberapa peningkatan kecil pada kelas Randomizer, membaca konfigurasi ini, dsb.
Pasukan PHP akan mengeluarkan versi kecil PHP baharu pada akhir bulan ini. Versi baharu terutamanya akan mengandungi penambahbaikan dan ciri yang, kecuali beberapa, tidak akan sangat relevan untuk pengguna akhir.
Pemalar Kelas Ditaip
Kita semua menggunakan pemalar pada satu ketika. Setakat ini, jenis pemalar telah disimpulkan daripada nilainya. Ini juga bermakna bahawa keupayaan untuk mewarisi atau melaksanakan kelas boleh mengubah jenis. Secara ringkasnya, fungsi baharu akan kelihatan seperti ini:
class Foo { public int BAZ = 1; }
Sahkan Muatan JSON
Dalam hampir setiap situasi di mana JSON mesti dibaca, ditukar dan ditulis, ia mesti disahkan terlebih dahulu. Anda boleh melakukan "penyahkod ujian" untuk melihat sama ada pengecualian dilemparkan atau sediakan cawangan lain untuk kes muatan tidak sah.
Untuk muatan yang lebih kecil ini mungkin ok, tetapi menyahkod rentetan JSON yang sangat besar ke dalam tatasusunan hanya untuk menyemak sama ada ia sah adalah tidak elegan. Selain itu, ia boleh menyebabkan masalah ingatan dan/atau prestasi.
Fungsi json_validate baharu menjanjikan untuk menyemak sama ada rentetan yang diberikan adalah JSON yang sah dan lebih berprestasi serta cekap memori. Seperti yang ditunjukkan di bawah:
json_validate(string $json, int $depth = 512, int $flags = 0): bool
Peningkatan lanjut
Seperti yang saya katakan, terdapat peningkatan lanjut dalam versi PHP 8.3 yang akan datang. Oleh kerana saya secara peribadi tidak fikir ia adalah penting, saya hanya ingin menyebutnya di sini untuk kesempurnaan.
Penambahbaikan rawak: Penambahbaikan kecil, seperti menentukan julat untuk nilai titik terapung rawak atau menentukan panjang rentetan.
Semakan baca sahaja: Benarkan sifat baca sahaja dimulakan semula pada klon. Ini kelihatan seperti kes tepi, tetapi mungkin penting untuk pengklonan dalam.
#[Override] atribut: Atribut ini digunakan untuk menyatakan "niat" pengaturcara. Ia pada asasnya mengatakan "Saya tahu kaedah ini datang daripada kelas induk dan saya ingin membatalkannya. Jika ini berubah, sila beritahu saya
Kelas baca sahaja tanpa nama: Agak jelas. Sehingga kini, tiada cara untuk menciptanya, kini PHP memperkenalkannya.
Pemerolehan berterusan kelas dinamik: PHP membenarkan membaca sifat kelas dinamik menggunakan pendakap kerinting. Dengan 8.3, ia juga mungkin untuk membaca pemalar (serius, jangan lakukan itu).
Sifat statik dalam Sifat: Sifat statik yang diwarisi daripada kelas induk akan diisytiharkan semula. Secara peribadi, ia adalah gabungan jahat semua yang boleh anda lakukan dalam PHP. kenapa? Semak ia keluar.
Dan banyak lagi. Oleh kerana saya secara peribadi tidak fikir ia tidak relevan, saya tidak menyenaraikannya di sini. Untuk senarai lengkap semua perubahan, lihat panduan migrasi rasmi.
Kesimpulan
Seperti setiap keluaran baru, tiada peraturan emas untuk diikuti sama ada untuk mengemas kini atau tidak. Kami amat mengesyorkan menggunakan versi terkini, kerana ia sering membetulkan pepijat dan pepijat dalam versi terdahulu serta memberikan prestasi dan fungsi yang lebih baik.
Atas ialah kandungan terperinci Versi baharu PHP 8.3 akan dikeluarkan: gambaran keseluruhan ciri baharu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!