php - 无法通过引用传递参数1

标签 php syntax-error runtime-error

所以我试图检查变量的值是否等于数组的最后一行if($ver == end(Self::Supported_Version) {},但导致Cannot Pass Parameter 1 by reference错误...

我的代码:

namespace John; 
class SP {

const Supported_Version = array('a', 'b', 'c'); 

    public function VersionCheck()
    {
        return ($ver == end(Self::Supported_Version) ? (True)  : (False)); 
     }
 }

最佳答案

您无法创建对常量的引用,因为无法对其进行更改,并且end()通过引用接受参数。如果您确实需要一个常量,则分配给一个临时变量。您可以在通话中执行此操作。

另外,您不需要三元,因为==比较将返回truefalse:

return ($ver == end($s = Self::Supported_Version));

关于php - 无法通过引用传递参数1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49224820/

相关文章:

prolog - 如何修复 tolowercase 实现序言中的错误?

excel - excel vba中的语法错误(缺少运算符)

python - 使用幂函数计算效率图大小

python - 使用 sum 函数时不支持的操作数类型

c++ - 使用复制构造函数创建对象(三类简单规则)会产生运行时错误

php - 增加 SilverStripe 网站的最大文件上传大小

php - php函数中sql查询中的假值仅在引号中有效

php explode mysql 行

php - 如何将 $_POST 信息发送到此页面而不通过提交表单访问该页面?

C Typedef 结构问题