验证程序流程[已关闭]

问题描述 投票:0回答:2

编写验证代码时,最好的方法是什么?像这样:

if(!condition1) {
  print('error');
  return false;
}

if(!condition2) {
  print('error');
  return false;
}

do_something();
return true;

或者像这样:

if(condition1) {
  do_something();

  if(condition2) {
    return true;
  } else {
    print('error');
    return false;
} else {
    print('error');
    return false;
}

第一种方法对我来说似乎更干净,但我不确定使用一种方法相对于另一种方法是否有任何优点/缺点。

php validation flow
2个回答
1
投票

你的第二个函数与第一个函数的作用不同,因为即使条件2为假,它也会运行

do_something()

无论如何,我更喜欢结合我的条件,两个例子:

if(!condition1 || !condition2) {
  print('error');
  return false;
} else {
  do_something();
  return true;
}

假设您想要不同的错误消息:

if(!condition1) {
  print('error1');
  return false;
} elseif(!condition2) {
  print('error2');
  return false;
} else {
  do_something();
  return true;
}

我加入了他们的

if/elseif
链。它让你的意图变得清晰。


0
投票

这样会更干净

$str="";
if(!$condition1){
  $str .="- Error! condition 1 is required.<br>";
}

if(!$condition2){
  $str .="- Error! condition 2 is required.<br>";
}

if(trim($str)!=""){
 print("Error occurred -<br>".$str);
 return false;
}else{
 return true;
}

希望这有帮助

© www.soinside.com 2019 - 2024. All rights reserved.