如何通过使用另一个数组中的值来获取1个关联数组的值?

时间:2018-11-21 07:04:16

标签: php arrays

$gender = array ('boy', 'girl', 'trangender');
$shopping_data = array(
            'boy' => array(
                'accessory' => array('belt','wallet','watch'),
                'age' => array(20,45,50)
             ),
             'girl'=> array(
                'accessory' => array('hair-clip','wallet','watch'),
                'age' => array(30,40)
             )
);

如何通过使用$ gender获得价值“发夹”?

2 个答案:

答案 0 :(得分:1)

您可以完全合并两个数组吗?

我在考虑以下方面的事情

$gender = array_merge(array_flip($gender), $shopping_data);

echo '<pre>';
var_dump($gender['girl']['accessory'][0]);
echo '</pre>';
exit;

答案 1 :(得分:0)

您的意思是循环并向每个性别回显这些项目?

$gender = array ('boy', 'girl', 'trangender');
$shopping_data = array(
            'boy' => array(
                'accessory' => array('belt','wallet','watch'),
                'age' => array(20,45,50)
             ),
             'girl'=> array(
                'accessory' => array('hair-clip','wallet','watch'),
                'age' => array(30,40)
             )
);


foreach($gender as $gen){ // loop genders
    if(isset($shopping_data[$gen])){ // is gender in shopping_data
        echo $gen .":\n";
        foreach($shopping_data[$gen]["accessory"] as $acc){ // loop the accessories to the gender
            echo $acc . "\n";
        }
        echo "\n\n";
    }
}

输出:

boy:
belt
wallet
watch


girl:
hair-clip
wallet
watch

https://3v4l.org/hjCrV