1

我在将变量设置为函数的一部分时遇到了麻烦,我确定它的语法比什么都重要,我试图做的是使用 if/else 语句并作为它的一部分,返回一个变量 $Bname。

但我不确定如何设置它。

我的功能如下

 function bestPriceFunc($var1, $var2) {
      if ($var1 < $var2) {
          return $var1;
          $Bname = 'will';
          return $Bname;

      } else {
          return $var2;
          $Bname = 'Lad';
          return $Bname;
      }
  }

这是正确的方法还是我可以写return $Bname = 'Lad';。我都试过了,但是当我加载页面时我得到一个未定义的变量错误

4

3 回答 3

4

每个函数只能使用一次 return,因为它在第一次执行时终止函数。

尝试以下操作,或者如果您不需要返回 $var1 和 $var2,只需删除这些行。

<?php
function bestPriceFunc($var1, $var2) {
    if ($var1 < $var2) {
        $Bname = 'will';
        return array($var1, $Bname);

    } else {
        $Bname = 'Lad';
        return array($var2, $Bname);
    }
}

$var = bestPriceFunc(3, 4);
$bnameoutput = $var[1];
?>
于 2013-02-05T15:13:07.940 回答
0

当您尝试使用该$Bname变量时,您会收到未定义的错误,因为您已经在返回$var1and $var2

return 语句结束函数。一旦你点击return $var1;return $var2函数结束并返回指定的变量。为了返回$Bname变量,您需要摆脱其他返回。

于 2013-02-05T15:13:19.657 回答
0

一旦返回$var;函数执行结束,这意味着其余代码将被忽略,因此$Bname未设置。

每个函数中还有两个“return”,我建议对函数的工作原理有一个了解

于 2013-02-05T15:14:46.037 回答