在我下面的php函数中,我在失败时返回错误消息。有必要我也回复假吗?因为我然后使用下面代码中的函数。
功能
function addThis($a) {
global $msg;
if($a == 1) {
return true;
} else {
$msg = 'Error';
//return false; -> Should I compulsorily be using return false here
}
}
使用上述功能
如果它是假的,它可以正常工作并显示错误消息。但由于错误不是从函数中返回的,因此可能会出现问题吗?我应该在函数内强制使用return false吗?
if (addThis(12)) {
echo 'Cool';
} else {
echo $msg;
}
答案 0 :(得分:2)
没有它就可以工作,但添加它不会受到伤害,并且肯定会被认为是更好的stye,因为它会使你的意图变得清晰,并且意味着该函数始终返回一个布尔值。
没有它的原因是,如果PHP在没有命中return
语句的情况下到达函数的末尾(或者如果你说return;
没有值),则认为该函数返回{ {1}}。当您随后在null
语句中测试该值时,会将其强制转换为布尔值,并将其视为if
,从而达到false
子句。
答案 1 :(得分:0)
但是由于函数没有返回false,是否有可能出现问题?
不,它不会,只要功能定义与您在问题中显示的相同。由于else
部分之后没有其他内容,因此在这种情况下不会出现任何问题。
但是,从函数中return
被认为是最佳实践,然后在条件中使用它。
答案 2 :(得分:0)
实际上你提供的代码似乎没有问题;因为PHP思想宽广,并不介意这些可忽略的技术问题。但best practice
到Boolean Function
的{{1}}至少return
。
这样功能将双面执行;
True/False in any condition
first: will show a message "Error"
second: will return false (behind the screen) function-wise; and will eradicate the error possibility with other functions