2015-08-14 76 views
1

我在一些仍在使用和運行的舊版PHP代碼中遇到了這個問題。我找不到任何Google結果,並且從未見過它。 其他分號後的分號是怎麼回事?PHP以分號結尾

if($placeholder_name=="###google_adwords_conversion###") 
{ 
    if(!$currentSiteIsLive) 
    { 
     return ""; 
    } 
    else; 
} 
else if($placeholder_name=="###google_visitor###") 
{ 
    if(!$currentSiteIsLive) 
    { 
     return ""; 
    } 
    else; 
} 
else; 
+6

沒什麼。這只是PHP中的一種不妥協和沮喪的編碼風格。 –

+0

它什麼都不做。只是一個NOP。 – Rizier123

+0

它就像'if(true);'和許多其他構造。這只是一種冗長的說「無所事事」的方式。也許編寫它的人會有一個代碼分析器,他們會懷疑if()沒有別的東西,這就是編碼器選擇關閉分析器的方式。 –

回答

0

其基本上是說如果不是真的,那麼不要做任何事情,你可以用花括號達到同樣的效果。像這樣:

else {}

0

它沒有做任何事情。它只是告訴PHP,否則 - >什麼也不做。我相信編寫該代碼的人認爲如果陳述應該總是有其他陳述。

1

大括號被視爲終止字符。它們用於包含複合語句塊。所以最後不需要使用分號。

if { 
// code 
} 

如果你只有一條語句,你在最後加上一個分號。

if (true); // don't do anything 

我知道這很難看。