我在php中有以下代码:
define('QUERY', $some_query_string);
if(empty(QUERY) || mb_strlen(QUERY) < 4):
//worn the user about incorrect query input
endif;
运行这个脚本时我得到的是Parse error: syntax error, unexpected ')', expecting T_PAAMAYIM_NEKUDOTAYIM
,但是当我使用普通变量代替常量时,一切正常!
不需要使用常数,但如果有人能解释为什么我会收到该错误,我将不胜感激?
(我刚刚来这里,所以请告诉我是否需要提供更多细节)
答案 0 :(得分:2)
empty
仅适用于变量。如果要检查是否已定义常量,请使用defined
。 empty
产生的错误消息无效使用不一定非常直观,关于T_PAAMAYIM_NEKUDOTAYIM的消息主要意味着解析器被绊倒。