Php 在我的例子中,如何比较两个数组
我试图比较数组和值 我有点像Php 在我的例子中,如何比较两个数组,php,arrays,Php,Arrays,我试图比较数组和值 我有点像 $values = array(1,5,9); $array = array(1,3,5,7,9); 我想知道1,5,9是否在$array 所以我做了 foreach($values as $value) { if(in_array($value, $array)){ echo "found"; }else{ //i also need get 3 and 7 from `$array` because they are
$values = array(1,5,9);
$array = array(1,3,5,7,9);
我想知道1,5,9是否在$array
所以我做了
foreach($values as $value) {
if(in_array($value, $array)){
echo "found";
}else{
//i also need get 3 and 7 from `$array` because they are not in values array
//How do I do this?
}
}
但是,我还需要从
$array
中获取3和7,因为它们不在值数组中。有办法做到这一点吗?谢谢。在那种情况下你做不到,但是,你考虑过这样的事情吗:
$values = array(1,5,9);
$array = array(1,3,5,7,9);
foreach($values as $value) {
if(in_array($value, $array)){
echo "found";
}
}
//check numbers that are not in array
$diff = array_diff($array, $values);
print_r($diff);
也许在目标阵列中搜索
foreach($array as $value) {
if(in_array($value, $values)){
echo "found: ".$value;
}else{
echo "not found: ".$value;
}
}
只需将它们存储在新阵列中:
$valuesNotInArray = array();
foreach($values as $value) {
if(in_array($value, $array)){
echo "found";
}else{
//i also need get 3 and 7 from `$array` because they are not in values array
//How do I do this?
array_push($valuesNotInArray, $value);
}
然后对$valuesNotInArray中的元素执行任何操作
或者把它们重复出来:
foreach($values as $value) {
if(in_array($value, $array)){
echo "found";
}else{
//i also need get 3 and 7 from `$array` because they are not in values array
//How do I do this?
echo $value;
}
array_diff()
是此函数的内置函数。你是说像?MarkBaker我们需要一个“通用数组操作”的参考问题。我找不到任何好的复制品。他们只会在你的答案的值数组中循环,它不会推送他不在$values数组中的$array值。你需要像阿纳尔多在他的回答中所做的那样,颠倒前因后果。