使用php中的另一个数组更改多维数组中的数组ID

时间:2014-02-05 17:38:58

标签: php arrays multidimensional-array key

全部。

需要一点帮助。 strait to point。

示例:我有2个数组

$myArray = array ( 'name' => 'Dollar', 'sign' => '$', 'format' => '1', 'decimals' => '1', 'conversion_rate' => '1.324400' );

$myArrayNew = array ( 0 => 'Name', 1 => 'Sign', 2 => 'Format', 3 => 'Decimals', 4 => 'Conversion Rate');

当我使用

$combinedarrays = array_combine($myArrayNew, $myArray);

输出

Array ( [Name] => Dollar [Sign] => $ [Format] => 1 [Decimals] => 1 [Conversion Rate] => 1.324400 )

我需要。但问题是我的第一个数组是多维的,如:

$myArray = array( array ( 'name' => 'Dollar', 'sign' => '$', 'format' => '1', 'decimals' => '1', 'conversion_rate' => '1.324400' ),
                  array ( 'name' => 'Euro', 'sign' => '€', 'format' => '2', 'decimals' => '1', 'conversion_rate' => '1.000000' ));

所以,我的问题是:如何将键更改为:

$myArray = array( array ( 'Name' => 'Dollar', 'Sign' => '$', 'Format' => '1', 'Decimals' => '1', 'Conversion Rate' => '1.324400' ),
                  array ( 'Name' => 'Euro', 'Sign' => '€', 'Format' => '2', 'Decimals' => '1', 'Conversion Rate' => '1.000000' ));

我堆在这里。

向前迈进。

1 个答案:

答案 0 :(得分:0)

您需要循环子数组。

试试这个:

$myArrayNew = array ( 0 => 'Name', 1 => 'Sign', 2 => 'Format', 3 => 'Decimals', 4 => 'Conversion Rate');

$myArray = array( array ( 'name' => 'Dollar', 'sign' => '$', 'format' => '1', 'decimals' => '1', 'conversion_rate' => '1.324400' ),
              array ( 'name' => 'Euro', 'sign' => '€', 'format' => '2', 'decimals' => '1', 'conversion_rate' => '1.000000' ));

$combinedarrays = array();
foreach($myArray as $subarr)
   $combinedarrays[] = array_combine($myArrayNew, $subarr);

print_r($combinedarrays);