php7 有参数类型,PHP7中的可空返回类型
小編典典
PHP 7.1現(xiàn)在支持可為空的返回類型。我鏈接到的第一個RFC是他們使用的RFC:
function nullOrString(int $foo) : ?string
{
return $foo%2 ? "odd" : null;
}
舊答案:
由于我的評論實際上是對該問題的答案:
PHP
7尚不支持可空的返回類型,但是有一個RFC可以解決這個問題,它的目標是加入PHP
7.1。如果通過,則語法將影響所有類型提示(返回類型和類型提示):
public function returnStringOrNull(?array $optionalArray) : ?string
{
if ($optionalArray) {
return implode(', ', $optionalArray);//string returned here
}
return null;
}
還有一個競爭性的RFC添加聯(lián)合類型,該聯(lián)合類型可以執(zhí)行相同的操作,但外觀有所不同:
public function returnStringOrNull(array|null $optionalArray) : string|null
{
if ($optionalArray) {
return implode(', ', $optionalArray);//string returned here
}
return null;
}
不過,到目前為止,您必須編寫:
public function returnStringOrNull( array $optionalArray = null)
{
if ($optionalArray) {
return implode(', ', $optionalArray);
}
}
或者只是返回一個空字符串以與返回類型一致,然后檢查falsy值:
public function returnStringOrNull( array $optionalArray = null) : string
{
if ($optionalArray) {
return implode(', ', $optionalArray);
}
return '';
}
//call
$string = $x->returnStringOrNull();
if (!$string) {
$string = $x->returnStringOrNull(range(1, 10));
}
2020-05-29
總結(jié)
以上是生活随笔為你收集整理的php7 有参数类型,PHP7中的可空返回类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 搭建私有helm仓库及图形界面
- 下一篇: Vue + Element UI 实现