PHPを使用して2つの配列を連結する方法?

Creativiniでコーディング:

私は、2つの配列を持っています:

$browser = array("firefox", "opera", "edge");
$version = array("10", "12", "14");

私は彼らに、最終的な配列があるべきような方法を連結します:

array(0=>array("name"=>"firefox", "version"=>"10"), 1=>array("name"=>"opera", "version"=>"12"), 2=>array("name"=>"edge", "version"=>"14"));

コードは、任意の組み込みまたはユーザ定義関数を含むことができます。私が使って試してみました:

$browser = array("firefox","opera","edge");
$version = array("10","12","14");
foreach($browser as $key=>$values){
  if(!isset($array)){
    $array = array("name"=>$browser[$key],"version"=>$version[$key]);
  }else{
    $array = array($array,array("name"=>$browser[$key],"version"=>$version[$key]));
  }
}
print_r($array);

そして、私が得た出力されました:

Array ( [0] => Array ( [0] => Array ( [name] => firefox [version] => 10 ) [1] => Array ( [name] => opera [version] => 12 ) ) [1] => Array ( [name] => edge [version] => 14 ) ) 

また、このコードはPHPであり、少なくとも10個の配列の長さのデータのために働くべきであることに注意してください。

AbraCadaver:

私はちょうど配列をマッピングします:

$result = array_map(function($b, $v) {
                        return ['browser' => $b, 'version' => $v];
                    }, $browser, $version);

また、動的なキーの配列を使用することができます。

$keys = ['browser', 'version'];
$result = array_map(function($b, $v) use($keys) {
                        return array_combine($keys, [$b, $v]);
                    }, $browser, $version);

しかし、あなたのコードでだけで最初の形式を使用ifして動的にAPPEND []

foreach($browser as $key=>$values){
    $array[] = array("name"=>$browser[$key],"version"=>$version[$key]);
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=9908&siteId=1