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

หัวข้อกระทู้ ใน 'เทคโนโลยี' เริ่มโพสต์โดย iPokz, 28 สิงหาคม 2014.

  1. iPokz

    iPokz ~" iPokz "~ Staff Member

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

    • คีย์ในอาร์เรย์จะไม่ถูกเขียนทับเมื่อประกาศค่าเป็น property ของ class ผ่านการประกาศด้วยวงเล็บปีกแข็ง
    • ฟังก์ชัน 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

    Development, PHP
     

แบ่งปันหน้านี้