輸入提示類和介面
在 PHP 5 中新增了類和介面的型別提示。
類型別提示
<?php
class Student
{
public $name = 'Chris';
}
class School
{
public $name = 'University of Edinburgh';
}
function enroll(Student $student, School $school)
{
echo $student->name . ' is being enrolled at ' . $school->name;
}
$student = new Student();
$school = new School();
enroll($student, $school);
上面的指令碼輸出:
克里斯正在愛丁堡大學就讀
介面型別提示
<?php
interface Enrollable {};
interface Attendable {};
class Chris implements Enrollable
{
public $name = 'Chris';
}
class UniversityOfEdinburgh implements Attendable
{
public $name = 'University of Edinburgh';
}
function enroll(Enrollable $enrollee, Attendable $premises)
{
echo $enrollee->name . ' is being enrolled at ' . $premises->name;
}
$chris = new Chris();
$edinburgh = new UniversityOfEdinburgh();
enroll($chris, $edinburgh);
以上示例輸出與以前相同:
克里斯正在愛丁堡大學就讀
自我提示
self
關鍵字可用作型別提示,以指示該值必須是宣告該方法的類的例項。