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

必ず再確認してください。間違った配列を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 に答える
1

次のようなことをする必要があります。

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