Php 如何使用for循环逐元素比较两个数组?

Php 如何使用for循环逐元素比较两个数组?,php,arrays,for-loop,Php,Arrays,For Loop,这是我问题的一个模拟例子 如果有必要,“for循环”将包含在while循环中 下面的代码应该比较每个数组的每个元素,并回显相同的元素。在本例中为“脂肪” 然而,代码不起作用,我不知道为什么。我相信这是一个简单的解决办法,但我似乎找不到它 $searchValue="Bob Is Fat"; $explode = explode(' ', $searchValue); //turns $searchValue into an array $tags_cnt = count($e

这是我问题的一个模拟例子

如果有必要,“for循环”将包含在while循环中

下面的代码应该比较每个数组的每个元素,并回显相同的元素。在本例中为“脂肪”

然而,代码不起作用,我不知道为什么。我相信这是一个简单的解决办法,但我似乎找不到它

$searchValue="Bob Is Fat";
$explode = explode(' ', $searchValue);           //turns $searchValue into an array
$tags_cnt = count($explode);                     //counts elements in the array

$result_tag = array("Volvo", "Skinny", "Fat");   //creates an array
$row_cnt = count($result_tag);                   //counts elements in array


        for($i=0; $i<$tags_cnt-1; $i++) {
            for($x=0; $x<$row_cnt-1; $x++) {
                if ($result_tag[$x] == $explode[$i]) {        
                    echo $explode[$i];
                }   
            } //2 forloop                                                               
        } //1 forloop
$searchValue=“鲍勃胖”;
$explode=explode(“”,$searchValue)//将$searchValue转换为数组
$tags\u cnt=计数($explode)//对数组中的元素进行计数
$result_tag=数组(“沃尔沃”、“瘦”、“胖”)//创建一个数组
$row\u cnt=count($result\u tag)//对数组中的元素进行计数

对于($i=0;$i删除-1,
$tags\u cnt-1
的值为2,当值
$i
的起始值为0时,在第二个循环中,
$i
的值为1,条件是循环工作直到
$i删除-1,
$tags\u cnt-1
的值为2,当值
$i
的起始值为0时,在第二个循环
$i
的值为1,条件是循环工作直到
$i删除-1,
$tags\u cnt-1
的值为2,当值
$i
的开始值为0时,第二个循环中
$i
的值为1,条件是循环工作直到
$i删除该值-1,
$tags\u cnt-1
的值为2,当值
$i
的起始值为0时,在第二个循环中,
$i
的值为1,条件是循环一直工作到
$i尝试foreach以消除数组键问题

foreach($explode as $explodeValue){
    foeach($result_tag as $tag){
        if($tag == $explodeValue){
            echo $explodeValue;
        }
    }
}

我认为这应该行得通。

尝试foreach以消除阵列关键问题

foreach($explode as $explodeValue){
    foeach($result_tag as $tag){
        if($tag == $explodeValue){
            echo $explodeValue;
        }
    }
}

我认为这应该行得通。

尝试foreach以消除阵列关键问题

foreach($explode as $explodeValue){
    foeach($result_tag as $tag){
        if($tag == $explodeValue){
            echo $explodeValue;
        }
    }
}

我认为这应该行得通。

尝试foreach以消除阵列关键问题

foreach($explode as $explodeValue){
    foeach($result_tag as $tag){
        if($tag == $explodeValue){
            echo $explodeValue;
        }
    }
}

我想这应该行。

为什么这里需要循环

$searchValue = "Bob Is Fat";
$explode = explode(' ', $searchValue);

$result_tag = array("Volvo", "Skinny", "Fat");

var_dump(array_intersect($explode, $result_tag));

为什么这里需要循环

$searchValue = "Bob Is Fat";
$explode = explode(' ', $searchValue);

$result_tag = array("Volvo", "Skinny", "Fat");

var_dump(array_intersect($explode, $result_tag));

为什么这里需要循环

$searchValue = "Bob Is Fat";
$explode = explode(' ', $searchValue);

$result_tag = array("Volvo", "Skinny", "Fat");

var_dump(array_intersect($explode, $result_tag));

为什么这里需要循环

$searchValue = "Bob Is Fat";
$explode = explode(' ', $searchValue);

$result_tag = array("Volvo", "Skinny", "Fat");

var_dump(array_intersect($explode, $result_tag));

为什么不使用foreach?它消除了关键错误的可能性。为什么不使用foreach?它消除了关键错误的可能性。为什么不使用foreach?它消除了关键错误的可能性。为什么不使用foreach?它消除了关键错误的可能性。