PHP 8.1 Telah Dirilis! Simak Fitur Baru, Perubahan, dan Lainnya

PHP telah merilis versi terbarunya, PHP 8.1, pada 25 November 2021 kemarin.  Dilansir laman resmi PHP, versi ini disebut membawa update besar-besaran pada bahasa pemrograman tersebut. Terdapat sejumlah fitur yang ditambahkan, diubah, dan dihentikan, guna meningkatkan kinerja PHP 8.1 dibanding versi sebelumnya.  Nah, Anda penasaran apa saja yang baru di PHP 8.1? Artikel kali ini […] The post PHP 8.1 Telah Dirilis! Simak Fitur Baru, Perubahan, dan Lainnya appeared first on Niagahoster Blog.

PHP 8.1 Telah Dirilis! Simak Fitur Baru, Perubahan, dan Lainnya
PHP telah merilis versi terbarunya, PHP 8.1, pada 25 November 2021 kemarin.  Dilansir laman resmi PHP, versi ini disebut membawa update besar-besaran pada bahasa pemrograman tersebut. Terdapat sejumlah fitur yang ditambahkan, diubah, dan dihentikan, guna meningkatkan kinerja PHP 8.1 dibanding versi sebelumnya.  Nah, Anda penasaran apa saja yang baru di PHP 8.1? Artikel kali ini akan mengulas hal-hal tersebut. Baca hingga selesai, yuk! Fitur Baru PHP 8.1 PHP 8.1 menyajikan banyak fitur baru dan menarik yang patut Anda ketahui, diantaranya: 1. Enums Enums atau Enumerations adalah tipe data berisi sekumpulan nilai atau value yang ditentukan sendiri oleh pengguna. Dengan Enums, proses validasi terhadap value menjadi lebih ringkas. Berikut contoh skripnya: enum Status { case Draft; case Published; case Archived; } function acceptStatus(Status $status) {...} 2. Fibers Fibers yaitu mekanisme untuk mengelola concurrency atau beberapa perintah yang berjalan bersamaan. Caranya dengan memulai, menjeda, atau menghentikan perintah tersebut tanpa mempengaruhi kinerja program secara keseluruhan. Contoh skrip Fibers sebagai berikut: $response = $httpClient->request('https://example.com/'); print json_decode($response->getBody()->buffer())['code']; 3. Readonly Properties Readonly Properties ialah fungsi pada PHP untuk menandai properti class sebagai readonly. Artinya, properti tersebut hanya bisa ditulis satu kali sehingga perubahan lanjutan yang dilakukan akan menimbulkan error. Keberadaan fitur ini dapat mengurangi boilerplate (menulis skrip yang sama secara berulang-ulang) pada program yang dihasilkan. Contoh penerapan readonly adalah: class BlogData { public readonly Status $status; public function __construct(Status $status) { $this->status = $status; } } 4. First-class Callable Syntax First-class Callable Syntax adalah sebuah syntax yang digunakan untuk menimpa value yang ada pada sebuah fungsi. Caranya dengan membuat fungsi tersebut menjadi callable atau dapat dipanggil. Pada PHP, ini dia bentuk skripnya: function foo(int $a, int $b) { /* … */ } $foo = foo(...); $foo(a: 1, b: 2); 5. Pure Intersection Types Pure Intersection Types adalah fungsi yang dipakai untuk mendeklarasikan beberapa constraints atau pembatas di saat yang sama. Fungsi ini sangat berguna, khususnya jika Anda sedang mengerjakan banyak interface sekaligus. Nah, berikut contoh skrip yang berisi Pure Intersection Types: function count_and_iterate(Iterator&Countable $value) { foreach ($value as $val) { echo $val; } count($value); } 6. Never Return Type Never Return Type adalah salah satu jenis return yang berfungsi untuk menghentikan alur kerja program. Caranya dengan menampilkan pesan error lewat fungsi exit, die, trigger_error, dan sejenisnya. Berikut contoh penerapannya di PHP 8.1: function redirect(string $uri): never { header('Location: ' . $uri); exit(); } 7. Final Class Constants Final Class Constants adalah fitur baru PHP 8.1 yang dapat menandai constant atau pengenal dari sebuah value. Fitur ini dapat mencegah pewarisan value yang tidak dikehendaki dari class induk menuju class turunan. Contoh skripnya sebagai berikut: class Foo { final public const XX = "foo"; } class Bar extends Foo { public const XX = "bar"; // Fatal error } Perubahan Fitur PHP 8.1 Selain fitur-fitur baru, PHP 8.1 juga melakukan perubahan sintaks terhadap beberapa fitur yang sudah ada, antara lain: 1. PHP Interactive Shell Pada PHP, Interactive Shell punya beragam fitur untuk keperluan navigasi, autocomplete, dan editing pada program. Di PHP versi sebelumnya, Anda bisa mengakses Interactive Shell meski tanpa mengaktifkan Readline Extension. Hasilnya, semua fitur Shell tidak bisa digunakan sama sekali. Di PHP 8.1, Anda wajib mengaktifkan Readline Extension jika ingin menggunakan Interactive Shell. Caranya dengan menginstall package bernama php8.1-readline dan lanjutkan dengan mengakses Shell tersebut melalui php -a pada terminal. 2. MySQLi Default Error PHP 8.1 mengubah metode yang digunakan untuk menampilkan error pada MySQLi menjadi seperti berikut: Fatal error: Uncaught mysqli_sql_exception: Connection refused in ...:... Dengan begitu, setiap error akan menampilkan pesan yang lebih terstruktur sehingga Anda dapat lebih mudah mengatasi error tersebut. Hal ini berbeda dengan PHP versi sebelumnya, di mana Anda harus mengatur secara mandiri metode penampilan error yang digunakan. Salah satu caranya melalui fungsi mysqli_report. Penghentian Fitur pada PHP 8.1 Meski menambahkan banyak fitur baru, tetap ada beberapa fitur yang akhirnya diberhentikan pada PHP 8.1, diantaranya: 1. Null to Non-Nullable Internal Functions Pada PHP 8.1, variabel bernilai null tidak bisa diserahkan pada variabel lain yang dideklarasikan sebagai non-null. Jika tetap dilakukan, PHP akan menampilkan pesan seperti berikut: var_dump(str_contains("foobar", null)); // Deprecated: Passing null to argument of type string is deprecated Hal ini berbeda pada PHP 8.0, di mana variabel yang telah dideklarasikan sebagai non-nullable tetap bisa menerima variabel bernilai null. 2. MySQLi Driver Version PHP punya sebuah ekstensi MySQLi bernama mysqli_driver->driver version yang seharusnya menampilkan versi driver dari MySQLi. Sayangnya, ekstensi ini sudah tidak diperbarui sejak 13 tahun yang lalu. Ekstensi ini tetap menampilkan driver versi lama, meski driver itu sendiri banyak mengalami perubahan. Pada akhirnya, PHP 8.1 menghentikan ekstensi yang satu ini karena tidak membawa dampak apapun pada program. Keunggulan PHP 8.1 Berkat optimasi fitur yang dilakukan, PHP 8.1 punya beberapa keunggulan dibanding PHP versi sebelumnya, yaitu: 1. Performa Lebih Cepat Berdasarkan hasil uji benchmark, PHP 8.1 punya performa yang lebih cepat sekitar 5-8% dari PHP 8.0. Hal ini berkat penambahan fungsi bernama inheritance caching pada Opcache, fitur caching bawaan PHP. Inheritance caching menghubungkan berbagai jenis class lalu melakukan proses caching pada class secara bersamaan. Kemudian hasil caching tersebut disimpan pada shared memory milik Opcache. Hasil caching tersebut akan disimpan selamanya, sehingga mengurangi jumlah perintah yang diperlukan. Hal tersebut terbukti dapat meningkatkan performa program secara keseluruhan. 2. Dukungan JIT Lebih Baik PHP 8.1 memperbaiki dukungan terhadap JIT (Just in Time) Compiler, sebuah teknik yang memungkinkan program diterjemahkan menjadi bahasa yang dimengerti komputer pada saat program tersebut berjalan secara real time. JIT sebenarnya sudah tersedia sejak PHP 8.0, tapi kemampuannya ditingkatkan lagi pada PHP 8.1. Salah satunya adalah penambahan dukungan backend terhadap arsitektur ARM64. Keberadaan JIT pada PHP 8.1 memang tidak berdampak positif dalam waktu dekat. Tapi di masa depan, ada kemungkinan Anda bisa menggunakan PHP tidak hanya untuk website, tapi juga untuk keperluan lain misalnya mobile app. Siapkah Anda Migrasi ke PHP 8.1? PHP 8.1 adalah versi terbaru PHP yang menawarkan keunggulan performa dibanding versi sebelumnya. Hal ini berkat berbagai optimasi yang dilakukan, mulai dari menambahkan fitur baru sampai menghentikan fitur yang sudah usang. Nah, apakah Anda sudah siap bermigrasi ke PHP 8.1? Tapi sebelum melakukan update, pastikan Anda mengikuti langkah-langkah berikut, guna menghindari error yang tidak diinginkan: Backup website Anda untuk mengembalikan website ke versi sebelumnya, jika terjadi masalah pada versi baru.Lakukan update terhadap tema, plugin, dan fitur pihak ketiga lain yang dipasang pada website Anda.Periksa kompatibilitas PHP untuk mengetahui adanya kemungkinan error pada fitur-fitur yang dipasang.Perbaiki masalah kompatibilitas, jika ditemukan error pada poin sebelumnya. Di samping menggunakan versi terbaru PHP, sebenarnya ada banyak faktor lain yang juga berpengaruh untuk meningkatkan performa website. Salah satunya adalah kualitas penyedia layanan hosting. Untuk itu, pilih layanan hosting yang menggunakan server tercepat di dunia LiteSpeed Enterprise, memudahkan pengelolaan website melalui cPanel versi terbaru, serta mengamankan website dari serangan malware lewat Imunify360. Tak perlu khawatir, karena semua itu bisa Anda dapatkan di Niagahoster. Ditambah lagi, Niagahoster juga menjamin website Anda bisa diakses dengan lancar selama 24 jam penuh! Tunggu apa lagi, yuk bangun website terbaik Anda dengan PHP dan gunakan layanan hosting dari Niagahoster sekarang! Saya Mau Berlangganan Layanan Hosting Niagahoster Sekarang Juga! The post PHP 8.1 Telah Dirilis! Simak Fitur Baru, Perubahan, dan Lainnya appeared first on Niagahoster Blog.