gpt4 book ai didi

php - 为什么在给出非变量时空期望 T_PAAMAYIM_NEKUDOTAYIM?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:58:24 27 4
gpt4 key购买 nike

<?php
define('foo', 'bar');

if (empty(foo)) {
echo 'qux';
}

http://codepad.org/G1TSK1c6
Parse error: syntax error, unexpected ')', expecting T_PAAMAYIM_NEKUDOTAYIM on line 4

我知道 empty() 只允许变量作为参数传递,但为什么当我给它一个 T_PAAMAYIM_NEKUDOTAYIM(即 ::)常数?

最佳答案

解析器想要的下一个逻辑对象是 ::,因为 foo 不是变量。

if (empty(foo::$bar)) {
}

是唯一在 empty() 未传递变量时有效的方法。您的示例被评估为 empty(bar),其中解析器假定 bar 是一个类名,现在需要一个静态成员变量。

关于php - 为什么在给出非变量时空期望 T_PAAMAYIM_NEKUDOTAYIM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5156781/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com