PHP 8.4: Evolusi yang Tidak Bisa Diabaikan
PHP tetap menjadi bahasa pemrograman yang paling banyak digunakan untuk membangun aplikasi web. Rilisnya PHP 8.4 membawa banyak perubahan substansial yang semakin terasa manfaatnya di 2026. Jika kamu masih menggunakan PHP 7.x atau 8.1, ini saat yang tepat untuk upgrade.
1. Property Hooks — Getter/Setter yang Elegan
Property hooks memungkinkan kamu mendefinisikan logika get/set langsung di deklarasi properti class:
class User {
public string $name {
set (string $value) {
if (strlen($value) < 2) {
throw new ValueError("Nama terlalu pendek!");
}
$this->name = ucfirst(trim($value));
}
}
}
$user = new User();
$user->name = "budi santoso";
echo $user->name; // "Budi santoso"
2. Asymmetric Visibility
Atur visibilitas baca dan tulis properti secara terpisah:
class Produk {
public function __construct(
public private(set) string $kode,
public protected(set) float $harga
) {}
}
$p = new Produk("PRD-001", 150000);
echo $p->kode; // Bisa dibaca dari luar
// $p->kode = "XXX"; // Error! Hanya bisa dari dalam class
3. Lazy Objects — Inisialisasi Ditunda
Objek berat hanya diinisialisasi saat pertama kali diakses, meningkatkan performa dependency injection secara signifikan.
4. Fungsi Baru: array_find() dan array_find_key()
$users = [
["nama" => "Budi", "role" => "admin"],
["nama" => "Sari", "role" => "editor"],
];
$admin = array_find($users, fn($u) => $u["role"] === "admin");
// ["nama" => "Budi", "role" => "admin"]
Cara Upgrade ke PHP 8.4 dengan Aman
- Jalankan
php -vuntuk cek versi saat ini - Update binary PHP dari windows.php.net
- Jalankan
composer updatedan perhatikan peringatan deprecation - Jalankan seluruh test suite sebelum deploy ke produksi
Kesimpulan
PHP 8.4 membawa lompatan signifikan dalam hal developer experience dan performa runtime. Fitur property hooks dan lazy objects saja sudah cukup alasan untuk segera upgrade. Jadwalkan migrasi ini di sprint berikutnya.