PHP 5.6 มาแล้ว เพิ่มความสามารถใหม่หลายประการ

by neizod
28 August 2014 - 14:05

ทีม PHP ประกาศออก PHP รุ่นใหม่ในหมายเลข 5.6.0 ซึ่งมีความสามารถที่เข้ากันไม่ได้กับรุ่นก่อนหน้า ดังนี้

  • คีย์ในอาร์เรย์จะไม่ถูกเขียนทับเมื่อประกาศค่าเป็น property ของ class ผ่านการประกาศด้วยวงเล็บเหลี่ยม (bracket)
  • ฟังก์ชัน json_decode() จะเข้มงวดกับการแปลไวยากรณ์ JSON มากขึ้น
  • Stream wrappers จะตรวจสอบใบรับรองเป็นค่าเริ่มต้นเมื่อใช้งาน SSL/TLS
  • ค่าตัวเลขขนาดใหญ่ที่สร้างจาก GMP ถูกทำให้เป็นวัตถุแล้ว
  • การใช้ฟังก์ชันจาก Mcrypt ต้องส่งค่ากุญแจและ IV ที่ถูกต้องเสมอ

ส่วนความสามารถใหม่ๆ ที่เพิ่มเข้ามาคือ

  • สร้างค่าคงที่จากนิพจน์ได้แล้ว (เดิมทีการสร้างค่าคงที่ต้องเขียนเป็นค่าเดี่ยวๆ ลงไปเท่านั้น)
  • ใช้ ... เพื่อสร้างฟังก์ชันที่รับตัวแปรเท่าไหร่ก็ได้ เช่น
    function plus($x, $y, ...$options) {
        if (in_array('abs', $options)) {
            $x = abs($x);
            $y = abs($y);
        }
        return $x + $y;
    }
  • ใช้ ... เพื่อ แตกตัวแปรจากอาร์เรย์เข้าฟังก์ชัน เช่น plus(42, ...[23,'abs']);
  • สามารถใช้เครื่องหมาย ** เพื่อเขียนแทนการยกกำลัง เช่น 4 == 2**2;
  • สามารถนำเข้าฟังก์ชันและค่าคงที่ด้วยคำสั่ง use จาก namespace อื่นได้แล้ว
  • เพิ่ม phpdbg ซึ่งเป็นเครื่องมือสำหรับดีบั๊กโปรแกรมแบบโต้ตอบกับผู้ใช้ (เช่นเดียวกับ gdb)
  • php://input สามารถใช้งานซ้ำได้เรื่อยๆ และประกาศไม่แนะนำให้ใช้ $HTTP_RAW_POST_DATA
  • GMP รองรับการใช้งานกับเครื่องหมายแล้ว เช่น 42 + gmp_init(123456);
  • รองรับการอัพโหลดไฟล์ที่มีขนาดใหญ่กว่า 2 GB

แถวนี้คงยังไม่รีบอัพเกรดกันเท่าไหร่ แต่ใครที่เขียน PHP อยู่ก็เตรียมตัวรับมือความเปลี่ยนแปลงด้วยนะครับ

ที่มา: PHP.net ผ่าน ทวีตของ @laracasts

Blognone Jobs Premium