ออกมาตั้งแต่ 28 สิงหาคม แต่ยังไม่มีโอกาสดูรายละเอียดเสียที สำหรับ PHP 5.6.0 ส่วนที่เปลี่ยนแปลงที่น่าสนใจคือ
<?php
const ONE = 1;
?>
- ตัวแปรฟังก์ชั่นแบบจำนวนแปรผัน หรือโอเปอร์เรเตอร์ ... ซึ่งผ่านตัวแปรแบบ Array ให้กับฟังก์ชั่น
<?php
function f($a, ...$params){
}
?>
- แจงตัวแปรฟังก์ชั่นอัตโนมัติ สำหรับการผ่านค่าชนิด Array เมื่อใช้โอเปอร์เรตอร์ ...
<?php
function add($a, $b, $c) {
return $a + $b + $c;
}
$operators = [2, 3];
echo add(1, ...$operators);
?>
- โอเปอร์เรเตอร์ยกกำลังใหม่ ** และยกกำลังและแทนค่า **=
<?php
printf("2 ** 3 == %d\n", 2 ** 3);
printf("2 ** 3 ** 2 == %d\n", 2 ** 3 ** 2);
$a = 2;
$a **= 3;
printf("a == %d\n", $a);
?>
- โอเปอร์เรเตอร์ use ขยายให้รองรับการเรียกใช้สำหรับตัวแปรคงที่และฟังก์ชั่น
<?php
namespace Name\Space {
const FOO = 42;
function f() { echo __FUNCTION__."\n"; }
}
namespace {
use const Name\Space\FOO;
use function Name\Space\f;
echo FOO."\n";
f();
}
?>
- phpdbg เป็น SAPI เพื่อใช้ในการ debug
- default_charset ถูกนำมาใช้กับ htmlentities(), html_entity_decode() และ htmlspecialchars() ด้วย
- โปรโตคอล php://input สามารถถูกเรียกใช้ได้ไม่จำกัด
- รองรับอัพโหลดไฟล์ขนาดใหญ่กว่า 2GB
- ตัวแปร GMP รองรับการทำงานของโอเวอร์โหลดโอเปอร์เรเตอร์และการแปลงค่าเป็นจำนวนเพื่อการคำนวนอัตโนมัติ
- ฟังก์ชั่น hash_equals() เพื่อตรวจสอบแฮชสตริง เพื่อลดเวลาการทำงานให้เร็วขึ้น
- เมธทอดวิเศษ __debuginfo() ที่ถูกเรียกใช้เมื่อวัตถุถูกเรียกใช้แสดงค่าด้วย var_dump() รองรับการเปลี่ยนค่าก่อนการแสดงผล
<?php
class C {
private $prop;
public function __construct($val) {
$this->prop = $val;
}
public function __debugInfo() {
return [
'propSquared' => $this->prop ** 2,
];
}
}
var_dump(new C(42));
?>
- การเข้ารหัสแบบ GOST โดยใช้ตารางเข้ารหัสแบบ CryptoPro S-box ตามที่อ้างอิงใน RFC 4357
- ปรับปรุง SSL/TLS ให้ทำงานได้รวดเร็วขึ้น
- PostgreSQL รองรับการเชื่อมต่อและการคิวรีแบบอะซิงโครนัส