1

PHPで多くの配列をマージする方法

    $array1="Array ( [0] => mouse ) Array ( [0] => mac ) Array ( [0] => keyboard )";

どうすればこのように配列できますか

    Array( [0] =>mouse  [1] => mac [2] =>keyboard );
4

4 に答える 4

1

array_mergePHPの関数を使用する必要があります。

これ:

<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r(array_merge($a1,$a2));
?>

これを返します:

Array ( [0] => red [1] => green [2] => blue [3] => yellow )

それはケーキのように簡単です!:)

試してみてください: http://www.w3schools.com/php/showphp.asp?filename=demo_func_array_merge

チュートリアル:

http://www.w3schools.com/php/func_array_merge.asp

http://php.net/array_merge

于 2013-11-06T17:39:13.573 に答える
1

したがって、基本的に配列の配列があります。これは次の方法で行うことができます。

$array = array(array(0 => 'mouse'), array(1 => 'mac'), array(2 => 'keyboard'));

$mergedArray = array();
foreach ($array as $part) {
    $mergedArray = array_merge($mergedArray, $part);
}

var_dump($mergedArray);

結果はまさにあなたが期待するものです:

array(3) {
  [0]=>
  string(5) "mouse"
  [1]=>
  string(3) "mac"
  [2]=>
  string(8) "keyboard"
}

大きな配列にスカラーもある場合は、ループを次のように変更できます。

foreach ($array as $part) {
    if (!is_array($part)) {
        $mergedArray[] = $part;
    } else {
        $mergedArray = array_merge($mergedArray, $part);
    }
}

注:これにより、すべてのサブ配列のすべての値がマージされます。サブ配列ごとに 1 つのエントリに限定されません。

于 2013-11-06T17:39:40.880 に答える
0

php array_merge() 関数、1 つ以上の配列の要素を一緒にマージして、1 つの値が前の配列の末尾に追加されるようにします。結果の配列を返します。$array = array_merge( $array1 , $array2, $array3 ..... $arrayN); を使用して N 個の配列をマージします。

     $array1 = array ( '0' => 'mouse' );
     $array2 = array ( '0' => 'mac' );
     $array3 = array ( '0' => 'keyboard' );

     $array = array_merge( $array1 , $array2, $array3);

     echo "<pre>";
         print_r($array);
     echo "</pre>";

O/P:

Array
(
   [0] => mouse
   [1] => mac
   [2] => keyboard
 )

詳細: http://us2.php.net/array_merge

于 2013-11-06T17:25:04.723 に答える