PHP ออกรุ่น 8.0 ปรับโครงสร้างให้เขียนโค้ดสั้นลง เพิ่ม JIT compiler

by lew
26 November 2020 - 17:26

PHP ออกรุ่น 8.0 ตัวจริง หลังจากเริ่มออก Alpha 1 เมื่อกลางปีที่ผ่านมา โดยมีฟีเจอร์สำคัญๆ ที่ทำให้การพัฒนาเปลี่ยนไปหลายอย่าง เช่น

  • Named Arguments กำหนดชื่ออาร์กิวเมนต์ที่ต้องการใช้งานได้ทันที ไม่ต้องเติมอาร์กิวเมนต์จนครบ
  • Attributes เปลี่ยนจากการประกาศเป็น PHPDoc มาเป็นโค้ด PHP มาตรฐาน
  • Constructor Property ประกาศสมาชิกของคลาสได้จาก constructor โดยตรง ทำให้โค้ดสั้นลง
  • Union Type ประกาศตัวแปรโดยระบุชนิดได้หลายชนิดพร้อมกัน
  • Match Expression คล้าย switch-case แต่เป็น expression เพื่อการคืนค่าโดยตรงทันที แต่ละ case จะรันคำสั่งได้ statement เดียวเท่านั้น และการ match จะเป็นแบบ strict type
  • Nullsafe กรณีที่เรียกตัวแปรเป็นสาย ($country = $session?->user?->getAddress()?->country;) สามารถยกเลิกได้ทันทีหากมีตัวใดในสายกลายเป็น null

นอกจากนี้ใน PHP 8.0 ยังมีเอนจิน JIT compiler มาอีกสองตัว ทำให้รันการทดสอบได้ประสิทธิภาพดีขึ้นถึงสามเท่า อย่างไรก็ตามการทดสอบที่ประสิทธิภาพดีขึ้นมากๆ เป็นการรันโค้ดต่อเนื่องยาวๆ สำหรับการใช้งานเว็บ เช่น WordPress นั้นประสิทธิภาพไม่ได้ต่างกันมากนัก

ที่มา - PHP.net

Blognone Jobs Premium