【问题标题】:PHP If Statement LogicPHP If 语句逻辑
【发布时间】:2015-08-27 08:38:20
【问题描述】:

我有点卡在我的 PHP 代码上的 if 语句上。 我知道这对于大多数人来说可能是一个基本问题,但我被困住了,我需要一些帮助。

我有 2 个变量 $max 和 $min,我必须将它们与其他 2 个称为 $valor 和 $minimo 的最大值和最小值进行比较,以检查它们是否在某个地方相遇。 我基本上拥有的是一组值,例如 min=20 和 max=30。

我想将它们与其他最大值和最小值进行比较,并检查值是否在某处满足,例如第二个的最小值是否为 29。我希望它进入 if 语句。

这是我现在得到的声明。 但它不起作用,我只是无法理解它的逻辑。 有什么帮助吗?

编辑:添加了我试图在 cmets 中实现的示例。

if ($min >= $valor && $min <= $minimo || $max >= $valor && $max <= $minimo)
    {
        //Do nothing
    }
else
    {
        $queryq = "INSERT INTO precos_area (id_tecido,area_minima,area_maxima,preco) VALUES ('".$id_tipo."', '".$min."', '".$max."', '".$price."')";
        $resultsq = mysql_query($queryq) or die(mysql_error());
    }

【问题讨论】:

  • || $max >= $valor && $max
  • 我的想法是一个最大值和一个最小值的值,而不是与另一个值交织在一起。想象一条线。一个最大值和一个最小值显示要绘制的片段。另一个显示了另一个必须涂上不同颜色的部分。我的愿望是检查他们是否交叉,以便在他们交叉时做一个声明

标签: php mysql if-statement logical-operators


【解决方案1】:

我感觉第二个最大值和最小值是错误的

if (($min >= $minimo && $min <= $valor ) || ($max >= $minimo && $max <= $valor ))

编辑 - 要捕捉 gview 提到的情况,您可能应该检查两个范围。这将捕获一个范围完全在另一个范围内的情况:-

if (($min >= $minimo && $min <= $valor ) 
|| ($max >= $minimo && $max <= $valor )
|| ($minimo >= $min && $minimo <= $max ) 
|| ($valor >= $min && $valor <= $max ))

【讨论】:

  • $min $valor.在这种情况下,线条重叠,但您的逻辑不会发现它是真的。有问题吗?
【解决方案2】:

使用

if (($min >= $valor && $min <= $minimo) || ($max >= $valor && $max <= $minimo))

【讨论】:

  • 谢谢。我尝试将它们分组。但它仍然无法正常工作。有人可以帮我解释一下这方面的逻辑吗?我对我的主要问题发表了评论,进一步解释了我想要实现的目标
  • 你能在这里定义你的价值观吗?
  • 例如。 $min 是 10,$max 是 20。我想检查 $minimo 和 $valor 上插入的任何值是否与这些值不交叉。有点像尝试用不同的颜色绘制 2 个不同的区域。他们不能跨越两者之间的任何地方。所以 $minimo 不能在 10 到 20 之间,$valor 也不能在这些值中
  • Kickstart 首先解决了它。但也非常感谢您的帮助。你也解决了问题的第一部分,所以我赞成你的答案。谢谢:)
【解决方案3】:

我认为您正在寻找的是这样的:

<?php

$min = 10;
$max = 20;
$valor = 25;
$minimo = 30;

if (($min >= $minimo && $min <= $valor ) || ($max >= $minimo && $max <= $valor )) {
print "win";
}

else {
print "lose";
}

?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多