Colon after method declaration?

后端 未结 2 1908
别那么骄傲
别那么骄傲 2020-12-01 15:53
public function getRecords(int $id): array;

Hi, can someone tell me what colon is doing here, in this method declaration inside PHP interface? Is t

相关标签:
2条回答
  • 2020-12-01 16:03

    These are called Return Type declarations in PHP7. It indicates the type of value that the function returns, and it's not limited to arrays. For example, you can use float, int or even your own class:

    class MyClass { }
    
    function something(): MyClass {
        return new MyClass();
    }
    

    These are not just for readability. If the function returns a type other than that indicated, the value will be coerced into the indicated type. If it cannot be coerced, or strict mode is enabled, a Type Error will be thrown.

    0 讨论(0)
  • 2020-12-01 16:26

    Yes it's new syntax introduced in PHP 7 to declare the method returns an array.

    http://php.net/manual/en/functions.returning-values.php#functions.returning-values.type-declaration

    0 讨论(0)
提交回复
热议问题