使用PHP,按键搜索一个数组,然后用匹配键中的值替换另一个数组中的值

雅克

我有两个数组:

$array_a =   
array (
    0 => array (
        0 => array (
                'name' => 'name',
                'label' => 'LBL_NAME',
            ),
        1 =>
            array(
                'name' => 'phone_office',
                'label' => 'LBL_PHONE_OFFICE',
            ),
        ),
    1 => array (
        0 =>
            array(
                'name' => 'website',
                'label' => 'LBL_WEBSITE',
            ),
            1 =>
            array(
                'name' => 'phone_fax',
                'label' => 'LBL_FAX',
            ),
        ),
    );

$array_b = array(
    'LBL_NAME' => 'Name:',
    'LBL_PHONE_OFFICE' => 'Office phone:',
    'LBL_WEBSITE' => 'Website:',
    'LBL_FAX' => 'Fax number:',
); 

如何使用第二个数组中的相应值替换[label]的值?

换句话说,我要结束的是:

$array_a =   
    array (
        0 => array (
            0 => array (
                    'name' => 'name',
                    'label' => 'Name:',
                ),
            1 =>
                array(
                    'name' => 'phone_office',
                    'label' => 'Office phone:',
                ),
            ),
        1 => array (
            0 =>
                array(
                    'name' => 'website',
                    'label' => 'Website:',
                ),
                1 =>
                array(
                    'name' => 'phone_fax',
                    'label' => 'Fax number:',
                ),
            ),
        );
瓦西里斯G.

您可以按照以下步骤进行操作:

foreach($array_a as $elemKey => $elemValue){
    foreach($elemValue as $itemKey => $itemValue){
         if(isset($array_a[$elemKey][$itemKey]['label'])){
              $array_a[$elemKey][$itemKey]['label'] = $array_b[$array_a[$elemKey][$itemKey]['label']];        
         } 
    }
}

print_r($array_a);

这将返回:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [name] => name
                    [label] => Name:
                )

            [1] => Array
                (
                    [name] => phone_office
                    [label] => Office phone:
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [name] => website
                    [label] => Website:
                )

            [1] => Array
                (
                    [name] => phone_fax
                    [label] => Fax number:
                )

        )

)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

PHP使用另一个数组中的值和键更新数组

PHP在一个数组中查找作为值存在于另一个数组中的键,然后拉回该值

如何比较按键与存储的数组,然后替换另一个数组中的字母

数组值替换为php中的另一个数组值

使用另一个数组中的值过滤一个数组

PHP:如何将一个数组中的键与另一个数组中的值进行比较,并返回匹配项?

使用javascript中另一个数组中的值搜索数组

如何使用另一个数组中其他对象的键替换对象数组中的值

使用一个数组中的值作为键从另一个数组中查找匹配项

用php中的另一个数组替换数组的值

检查一个数组的值是否与另一个数组的键匹配-PHP

如何从另一个数组的值构建PHP中多维数组的键?

根据另一个数组中的值替换一个数组中的值

用PHP中的另一个数组键替换一个数组键

用另一个数组的相同索引的值替换一个数组中的值?

将一个数组(键)中的对象数组变成另一个数组(值)

php如何通过另一个数组值搜索数组键

根据另一个数组中的值替换数组中的值

从另一个数组中删除一个数组中的值

使用php中的另一个数组从数组中删除公共值

将数组中的值与另一个数组中的值进行匹配

php-将一个数组中的值与另一个数组中的值互斥

通过另一个数组中的值过滤一个数组?

使用另一个数组中的值返回一个数组中的数组

按键中的值搜索数组并获取另一个键的值

在PHP中使用for循环将数组值存储在另一个数组中

将值添加到另一个数组中的值匹配的数组

将键从一个数组匹配到另一个数组,并使用它们的值创建一个新数组?

用特定值替换与另一个数组中的任何项目都不匹配的数组中的项目