PHP中的类型提示返回值/函数
Posted
技术标签:
【中文标题】PHP中的类型提示返回值/函数【英文标题】:Type-hinting return value/functions in PHP 【发布时间】:2014-03-06 07:29:24 【问题描述】:我做了一些研究,发现这个 RFC 讨论了 php 中函数的类型提示: https://wiki.php.net/rfc/returntypehint2
例如
public string getName()
return 'martinmine';
将是有效的 PHP 代码。例如,在这种情况下,返回一个数组会产生错误。有谁知道 RFC 的状态,或者它是否被删除/添加?我似乎无法使上面的这个功能起作用。我正在使用 PHP 5.5.9。
【问题讨论】:
还没有实现,而且那个RFC已经有一年了;据我所知,没有有效/当前的计划/投票来实现这一点。 @zerkms 如果可以的话,我会用 C# 编写它。 我不明白你为什么要立即推荐其他语言。问题没有提到这一点。在那种情况下,我们都可以放弃 php 和 C# 或 python 或其他代码。这不是这里的问题。现在关于类型提示 - afaics 它还没有被介绍,但看 cmets - php.net/manual/en/language.oop5.typehinting.php 没有添加返回值类型提示 - 在 PHP 5.5 和即将到来的 PHP 5.6 中都没有。目前在这个方向上没有积极的讨论(这是一个相当尖锐的话题;) Hack 添加这样的类型提示 【参考方案1】:返回类型的类型提示推迟到 PHP 7(截至this article),但语法与旧用途不同:
function foo(): array
return [];
但它已经在 PHP 5 中用于方法或函数的类型类参数(截至this article):
public function test_array(array $input_array)
print_r($input_array);
【讨论】:
以上是关于PHP中的类型提示返回值/函数的主要内容,如果未能解决你的问题,请参考以下文章