2010-01-06 65 views
2
define('test',2); 
if(isset(test))echo 'hi'; 
+2

大括号请! – Strawberry 2010-01-06 03:08:41

+1

PHP开发人员试图强迫自己的编码风格彼此不同?问题中的语法很好(现在缺少的paren已经修复),我相信OP的代码示例已被所有人理解。 – pix0r 2010-01-06 03:16:25

+0

@ pix0r:我相信包括花括号不仅仅是一种风格,这是一种很好的做法。在某些情况下,这是没有任何工作的原因! – Strawberry 2010-01-06 03:37:30

回答

4

isset是指变量。您应该使用defined代替:

define('test',2); 
if(defined('test')) echo 'hi'; 

您在isset之后还缺少一个括号。

+0

+1 - 这是目前唯一正确的答案。 (将'define'切换到'defined',你好) – pix0r 2010-01-06 03:06:15

+0

抱歉,错字 - 现在已修复。 – 2010-01-06 03:06:28

+0

所以你认为'测试'这里不是可变的,那么它是什么? – user198729 2010-01-06 03:07:52

-1

这是无效的PHP语法。

define('test',2); 
if(isset(test)){ 
    echo 'hi'; 
} 

这是您发布内容的正确版本。

+1

你不需要添加大括号,如果它只有1个班轮代码 – Treby 2010-01-06 03:02:09

+0

PHP解析错误:解析错误,期待'T_PAAMAYIM_NEKUDOTAYIM' – user198729 2010-01-06 03:03:32

+1

非括号版本如何不正确?据我所知,这是完全正确的,就像你可以选择使用括号一样。 – johnnyArt 2010-01-06 03:04:55

1

正如其他人所说,你错过了关闭)在你的“如果”的声明。使用括号格式化语句常常有助于追踪错误,因为它将代码分成更多行。通常没有理由对PHP进行简要介绍。

此外,您可能想要在此处使用定义('测试')。 http://php.net/manual/en/function.defined.php