繁体   English   中英

如何确定函数是否不返回任何内容?

[英]How to determine if function doesn't return anything?

有没有办法在PHP中使用Reflection或其他方法做到这一点?

function a{
  return null;
}

function b{

}


$a = a(); // null
$b = b(); // null :(

如果未显式返回某些内容,则默认情况下函数将返回null 这就是函数在PHP中的工作方式,并且无法找出函数是否具有返回值。

不过,这应该不是问题。 如果一个函数返回null,通常意味着什么也没做,或者什么也没找到,等等。

在定义自己的函数时,您应该了解自己是否返回任何东西。

无论如何。 除非您已覆盖返回值,否则函数默认返回null

function A (){   
}

function B(){
 return 'Test';
}

function C(){
return;
}

function CheckValidation ($Var){
    if (is_null($Var)){
        return 'Sample Is Null';
    }else{
        return 'Sample Is Not Null and returned a value!';
    }
}

echo CheckValidation(A()); // Will output: 'Sample Is Null'
echo CheckValidation(B()); // Will output: 'Sample Is Not Null and has returned a value!
echo CheckValidation(C()); // Will output: 'Sample Is Null'

我提供的函数是您将获得的最好的函数,因为如果没有返回值,则该函数默认返回null。

注意不要将其返回null因为它肯定不会显示任何结果。

而是尝试在其中添加一个echo语句以进行检查或returnreturn一个值,但是无论哪种情况,您仍然必须使用echo来输出结果。

另请参考有关如何创建用户定义功能的正确方法的PHP.NET

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM