cakephp通过满足两个数组之间的条件来查找数组元素?

cakephp通过满足两个数组之间的条件来查找数组元素?,php,arrays,cakephp,Php,Arrays,Cakephp,我有两个数组。一个数组由Id组成,另一个数组由值和键组成。例如我有一个名为Fruit_id的变量,它包括: array( 'fruit_id' => array( (int) 0 => '3', (int) 1 => '4' ) ) array( 'values' => array( (int) 1 => ' Apple', (int) 2 => 'Banana',

我有两个数组。一个数组由Id组成,另一个数组由值和键组成。例如我有一个名为Fruit_id的变量,它包括:

array(
    'fruit_id' => array(
        (int) 0 => '3',
        (int) 1 => '4'
    )
)
array(
    'values' => array(
        (int) 1 => ' Apple',
        (int) 2 => 'Banana',
        (int) 3 => 'Orange',
        (int) 4 => 'Mango'
    ),
    'keys' => array(
        (int) 0 => (int) 1,
        (int) 1 => (int) 2,
        (int) 2 => (int) 3,
        (int) 3 => (int) 4
    )
)
和另一个名为fruits的数组,该数组由以下部分组成:

array(
    'fruit_id' => array(
        (int) 0 => '3',
        (int) 1 => '4'
    )
)
array(
    'values' => array(
        (int) 1 => ' Apple',
        (int) 2 => 'Banana',
        (int) 3 => 'Orange',
        (int) 4 => 'Mango'
    ),
    'keys' => array(
        (int) 0 => (int) 1,
        (int) 1 => (int) 2,
        (int) 2 => (int) 3,
        (int) 3 => (int) 4
    )
)

因此,基于水果id,我想将Orange&Mango存储在一个变量中。如何实现这一点?

根据我的理解,您可以尝试以下代码

$fruits = array();

foreach ($array1['fruit_id'] as $key1 => $value1)
{
    foreach ($array2['values'] as $key2 => $value2)
    {
        if ($value1 == $key2)
        {
            $fruits[$value1] = $value2;
        }
    }
}

print_r($fruits);
这将返回数组([3]=>Orange[4]=>Mango)


让我知道这是否有助于您解决问题或进行任何必要的更改

您可以轻松实现这一点,而无需使用任何循环。改用


第二个数组中“键”的用途是什么?请详细说明
水果id
的关联。这些值和键是由requestAction以json格式导出的,并且已经解码。水果id由id组成,id是可变水果的关键。非常感谢。它完全成功了。再次感谢。欢迎考虑投票,并将其标记为正确。