1

我有一些项目,每个项目都有一个规则,我想知道哪个项目与另一个项目匹配。

假设项目 1 具有规则 1,项目 2 具有规则 2:

规则1:

z and d and (y or u) and j

规则 2:

u or ((e or z) and (d or y))

如何检查这些项目是否匹配?

4

3 回答 3

0

这是我从你的问题中得到的:

<?php
$rule1 = false;
$rule2 = false;

if($z && $d && ($y || $u) && $j){
    $rule1 = true;
}

if($u || (($e || $z) && ($d || $y))){
    $rule2 = true;
}

if($rule1==$rule2){
    echo 'These rules match.';
}else{
    echo 'These rules do not match.';
}?>
于 2012-11-27T21:25:06.363 回答
0

您创建一个真值表:对于输入变量的每个可能组合,计算两个规则的结果。如果它们为每个组合提供相同的值,则规则是相同的。

于 2012-11-28T05:52:28.953 回答
0

您可以将每个规则的结果分配给变量:

$rule1 = $z and $d and ($y or $u) and $j;
$rule2 = $u or (($e or $z) and ($d or $y));

两个$rule变量现在都是truefalse

$itemsMatch = $rule1 === $rule2;
于 2012-11-27T21:37:44.303 回答