範例:
可指定傳入參數的類型
- object
class AA{ //... } function myTest(AA $v){ var_dump($v); } myTest(new AA); //OK myTest(123); //error
- interface
interface myInterface{ //... } class AA implements myInterface{ //... } class BB{ //... } function myTest(myInterface $v){ var_dump($v); } myTest(new AA); //OK myTest(new BB); //error
- array
function myTest(array $v){ var_dump($v); } myTest(array(1,2,3)); //OK myTest(123); //error
- callable (PHP5.4以上)
function myTest(callable $v, $data){ call_user_func($v, $data); } myTest('var_dump', 123); //OK myTest(123, 123); //error
其餘int、string、Resources、Traits等類型,則都不用來指定,例如 int
function myTest(int $v){ //... } myTest(123); //error
參考:
PHP: Type Hinting - Manual
沒有留言:
張貼留言