2010-01-06 60 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