从关联数组中获取值

2022-08-30 20:01:32

我有以下主数组,称为$m

Array
(
    [0] => Array
        (
            [home] => Home
        )

    [1] => Array
        (
            [contact_us] => Contact Us
        )

    [2] => Array
        (
            [about_us] => About Us
        )

    [3] => Array
        (
            [feedback_form] => Feedback Form
        )

    [4] => Array
        (
            [enquiry_form] => Products
        )

    [5] => Array
        (
            [gallery] => Gallery
        )

)

我有值,例如home,contact_us存储在$options数组中,我需要使用$options数组从名为$m的主数组中获取值

例如。如果$options数组具有值 home,我需要从主数组中获取值 Home($m)

我的代码如下所示

                    $c = 0;
                    foreach($options as $o){
                        echo $m[$c][$o];
                        ++$c;
                    }

我不知何故无法从主数组接收值?


答案 1

我首先转换到一个只有一个级别的更简单的数组:$m

$new_m = array();
foreach ($m as $item) {
    foreach ($item as $key => $value) {
        $new_m[$key] = $value;
    } 
}

然后,您可以使用:

foreach ($options as $o) {
    echo $new_m[$o];
}

答案 2

试试这个:

foreach($options as $o){
    foreach($m as $check){
        if(isset($check[$o])) echo $check[$o];
    }
}

尽管最好只用页面而不是多维数组填充数组