检查当前 URL 中的文件名是否不等于 $a 或 $b
Check if file name in current URL is not equal to $a or $b
我正在尝试检查当前 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
}
这很好用。
知道我做错了什么吗?
提前感谢您的帮助!
应该有AND
运算符,
if ($fn !== 'blah.php' AND $fn !== 'bleh.php') {...}
如果你有更多的值,你也可以使用in_array
。
if (!in_array($fn, array('blah.php', 'bleh.php'))) {....}
你可以做两件事。
第一:使用 AND 而不是 OR
第二:如果您只与文件名进行比较,请使用
$fn = basename($_SERVER['PHP_SELF'])
您的代码完全正确,只需将 OR
替换为 &&。使用下面的代码
$fn = basename($_SERVER['PHP_SELF']);
if ($fn !== 'blah.php' && $fn !== 'bleh.php') {
// do something
}
希望对您有所帮助
我正在尝试检查当前 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
}
这很好用。
知道我做错了什么吗?
提前感谢您的帮助!
应该有AND
运算符,
if ($fn !== 'blah.php' AND $fn !== 'bleh.php') {...}
如果你有更多的值,你也可以使用in_array
。
if (!in_array($fn, array('blah.php', 'bleh.php'))) {....}
你可以做两件事。 第一:使用 AND 而不是 OR 第二:如果您只与文件名进行比较,请使用
$fn = basename($_SERVER['PHP_SELF'])
您的代码完全正确,只需将 OR
替换为 &&。使用下面的代码
$fn = basename($_SERVER['PHP_SELF']);
if ($fn !== 'blah.php' && $fn !== 'bleh.php') {
// do something
}
希望对您有所帮助