0

我有这个 PHP 代码:

$supplier = $line[2];
if ($supplier == "supplier")
{
} else {
Header("Location: premium.php");
}

现在我希望将 $supplier == "demo" 包含到 PHP 代码中,如下所示:

$supplier = $line[2];
if ($supplier == "supplier" && $supplier == "demo")
{
} else {
Header("Location: premium.php");
}

但后一个代码对任何一个都不起作用......我的意思是如果 $supplier 等于“供应商”或“演示”之外的其他东西,它仍然会绕过它。它只适用于第一个。

请问如何安排?

4

4 回答 4

2

线 if ($supplier == "supplier" && $supplier == "demo")

没有意义。$supplier在条件语句的中间不可能改变,因此这永远不会是真的。您可能正在寻找||(或)。

于 2012-08-02T23:34:06.873 回答
1

一定要借此机会理解和的含义,&&正如||其他人所提到的,但如果“或”确实是您正在寻找的逻辑,在这种情况下,我建议这样做:

if ( in_array( $supplier, array( "supplier", "demo" ) ) )
于 2012-08-02T23:43:33.937 回答
1
if ($supplier == "supplier" && $supplier == "demo")

永远不可能是真的,因为 $supplier 不可能同时是两者。你需要一个 OR 像这样:

if ($supplier == "supplier" || $supplier == "demo")
于 2012-08-02T23:35:24.177 回答
0

“&&”表示:两个连接语句都必须为真!“||” 意思是:其中一个陈述必须是真实的!

您的构造没有意义,因为您说 $supplier 必须是“演示”和“供应商”,这永远不会是真的,因为 $var 只能有一个值。

错误的:

if ($supplier == "supplier" && $supplier == "demo") // AND would also work

正确的:

if ($supplier == "supplier" || $supplier == "demo") // OR would also work
于 2012-08-02T23:34:46.013 回答