PHP 7 เปิดตัวส่งกลับชนิดประกาศ ซึ่งหมายความว่าตอนนี้ฉันสามารถระบุว่าค่าตอบแทนเป็นคลาสอินเทอร์เฟซอาร์เรย์ callable หรือหนึ่งในประเภทสเกลาร์ที่บอกใบ้ได้ใหม่ซึ่งเป็นไปได้สำหรับพารามิเตอร์ฟังก์ชัน
function returnHello(): string {
return 'hello';
}
บ่อยครั้งที่มันเกิดขึ้นที่ค่าไม่ได้มีอยู่เสมอและคุณอาจส่งคืนบางสิ่งบางอย่างหรือเป็นโมฆะ ในขณะที่คุณสามารถทำให้พารามิเตอร์เป็นโมฆะได้โดยการตั้งค่าเริ่มต้นเป็นโมฆะ ( DateTime $time = null
) ดูเหมือนจะไม่เป็นเช่นนั้นสำหรับวิธีการส่งคืน เป็นเช่นนั้นจริงหรือฉันไม่พบวิธีที่จะทำหรือไม่? สิ่งเหล่านี้ใช้ไม่ได้:
function returnHello(): string? {
return 'hello';
}
function returnHello(): string|null {
return 'hello';
}
Trowable
อินเทอร์เฟซPHP7 (โดยเฉพาะการขยายTypeError
)
function returnString(?string $stringNull) : ?string { return $stringNull;}