php可以混合类型提示吗?

时间:2017-02-10 00:56:34

标签: php type-hinting

假设我的函数想要接受字符串和整数。如果它是字符串,我之后将其转换为int。

function func(int|string $a) {
    echo is_string($a)?intval($a)+1:$a+1;
}

func(1344);
func('1344');

3 个答案:

答案 0 :(得分:7)

您要求的功能处于提案阶段。请参阅PHP RFC: Union Types

答案 1 :(得分:2)

混合被PHP 8.0接受:https://wiki.php.net/rfc/mixed_type_v2

class B
{
    public function foo(mixed $value) {}
}

答案 2 :(得分:1)

联盟类型RFC已为PHP 8接受并实现。

正在对混合类型RFC进行投票,但在撰写此答案时可能会通过。