php 强制返回,php – 我可以强制抽象类的方法返回一些东西吗?
在
PHP中,你不能“強制”一個方法來返回任何東西 – 即使使用抽象類/方法,也不可能使用接口.
您可以做的最好的事情是表明實現應該返回一些內容,使用注釋 – 但您不能強迫人們這樣做:
/**
* @param string $a blah blah
* @return int The return value blah blah
*/
public function my_method($a);
當然,如果從框架中調用此方法(實現),則可以檢查返回的內容,如果不符合預期,則拋出異常…
這是一個如何實現的簡單示例:
class ClassA {
/**
* @param string $a blah blah
* @return ClassB The return value blah blah
*/
public function my_method($a) {
echo 'blah';
}
}
class ClassB {
// ...
}
$a = new ClassA();
$returned = $a->my_method(10);
if (!$returned instanceof ClassB) {
throw new Exception("Should have returned an instance of ClassB !");
}
這里,由于該方法不返回ClassB的實例,因此將拋出異常.
總結
以上是生活随笔為你收集整理的php 强制返回,php – 我可以强制抽象类的方法返回一些东西吗?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++学习之路 | PTA乙级—— 10
- 下一篇: C++学习之路 | PTA乙级—— 1