我有 2 个数组:
首先:
$array1 = ("Key 1","Key 2","Key 3"); //is dynamic, so can range from 1 => many values
第二个数组是一个数据库值,它将根据玩家在库存中拥有的键数返回一个数组。
$array2 = ("Key 1","Key 1","Key 2","Key 3","Key 3","Key 3") //in this case, the player DOES have all the keys.
我的问题是,我想不出合适的逻辑来比较这些数组,$array2
看看$array1
.
我试过的比较代码..
$check = array();
while ($k = mysql_fetch_array($array2)) {
foreach ($array1 as $name) {
if ((string)$name == (string)$k['name']) $check[] = true;
else $check[] = false;
}
}
foreach ($check as $bool) {
if ($bool == false) {
$return = false;
} else {
$return = true;
}
}
return $return;
问题是当 I 时print_r($check)
,我得到很多错误,所以即使播放器包含所有正确的键,关闭比较也会破坏代码并返回错误。
任何有关此比较逻辑的帮助都会非常好,如果您需要更多详细信息,请告诉我。