0

我没有成功使用array_combine(). 谁能帮我弄...

由此

array
  0 => 
    array
      0 => 
        array
          'traitvalue01' => string 'width'
          'traitvalue02' => string 'Length'
          'traitvalue03' => string 'Top'
          'traitvalue04' => string 'Bottom'
  1 => 
    array
      0 => 
        array
          'trait01' => string '7 in'
          'trait02' => string '25 in'
          'trait03' => string '3 in'
          'trait04' => string '3 in'

到这个

array
    string 'width'  => string '7 in'
    string 'Length' => string '25 in'
    string 'Top'    => string '3 in'
    string 'Bottom' => string '3 in'
4

4 回答 4

1

你应该这样做:

> $a = unset($yourArray[0][$key]); 
> $b = unset($yourArray[1][$key]);
> array_combine($a, $b);
于 2012-09-15T21:08:52.137 回答
1

确保仔细检查 - 您可能将错误的数组传递给 array_combine()。

这是我为您整理的一个示例。您可以通过 PHP 二进制文件运行它以查看结果(正确)。

<?php
    $trait_array = array();
    array_push($trait_array, array(array('traitvalue01' => 'width', 'traitvalue02' => 'Length', 'traitvalue03' => 'Top', 'traitvalue04' => 'Bottom')));
    array_push($trait_array, array(array('trait01' => '7 in', 'trait02' => '25 in', 'trait03' => '3 in', 'trait04' => '3 in')));
    $result_array = array_combine($trait_array[0][0],$trait_array[1][0]);
    echo(print_r($result_array,1));
?>
于 2012-09-15T21:12:41.383 回答
1

您是否尝试使用 array_combine?

$myarr = array(
              0=>array(
                  0=>array( 
                     'traitvalue01' => 'width',
                     'traitvalue02' => 'Length',
                     'traitvalue03' =>'Top',
                     'traitvalue04' => 'Bottom')),
             1=>array(
                  0=>array( 
                     'trait01' =>'7 in',
                     'trait02' => '25 in',
                     'trait03' => '3 in',
                     'trait04' => '3 in'))
          );

print_r(array_combine($myarr[0][0],$myarr[1][0]));

结果:数组([宽度] => 7 英寸 [长度] => 25 英寸 [顶部] => 3 英寸 [底部] => 3 英寸)

你动态地制作它。如你所愿......简单。

于 2012-09-15T21:16:47.873 回答
1

这是我的解决方案:

<?php

$a = array(
        array(
            array(
                'traitvalue01' => 'width',
                'traitvalue02' => 'Length',
                'traitvalue03' => 'Top',
                'traitvalue04' => 'Bottom'
            )
        ),
        array(
            array(
              'trait01' => '7 in',
              'trait02' => '25 in',
              'trait03' => '3 in',
              'trait04' => '3 in'
            )
        )
    );

print_r(array_combine($a[0][0], $a[1][0]));

?>

这是输出:

Array
(
    [width] => 7 in
    [Length] => 25 in
    [Top] => 3 in
    [Bottom] => 3 in
)
于 2012-09-15T21:19:27.867 回答