2015-01-13 39 views
-1

我試圖檢查當前URL的文件名不等於兩個值:

$fn = basename($_SERVER['PHP_SELF']); 

if ($fn !== 'blah.php' OR $fn !== 'bleh.php') { 
    // do something 
} 

出於某種原因,這個if語句失敗。

但是,如果我用簡單:

$fn = $_SERVER['PHP_SELF']; 

if ($fn !== 'blah.php') { 
    // do something 
} 

這工作得很好。

任何想法我做錯了什麼?

非常感謝您的幫助!

+0

使用&&(AND)不OR。 –

回答

1

應該有AND操作,

if ($fn !== 'blah.php' AND $fn !== 'bleh.php') {...} 

如果您有更多的存在價值,你可以使用in_array了。

if (!in_array($fn, array('blah.php', 'bleh.php'))) {....} 
0

你可以做2件事。 第一:利用和替代或 第二:如果您正在使用的文件名比較只使用

$fn = basename($_SERVER['PHP_SELF']) 
0

你的代碼是完全正確的,你必須只是& &取代OR。使用下面

$fn = basename($_SERVER['PHP_SELF']); 

if ($fn !== 'blah.php' && $fn !== 'bleh.php') { 
    // do something 
} 

希望這段代碼可以幫助您

相關問題