は、私はこのような二つの配列を連結する:PHPで2つの配列を連結するにはどうすればよいですか?
$cars=array("Volvo","BMW","Toyota");
$speed=array("210","220","330");
$merge=array_merge($cars,$speed);
予想される出力:
array(
0=>Volvo 210
1=>BMW 220
2=>Toyota 330
)
は、私はこのような二つの配列を連結する:PHPで2つの配列を連結するにはどうすればよいですか?
$cars=array("Volvo","BMW","Toyota");
$speed=array("210","220","330");
$merge=array_merge($cars,$speed);
予想される出力:
array(
0=>Volvo 210
1=>BMW 220
2=>Toyota 330
)
はまた、この最も単純なものを試すことができます。ここでは、両方の配列を結合し、別の配列に押し込み所望の出力
<?php
$cars = array('Volvo', 'BMW', 'Toyota');
$speed = array('210', '220', '330');
$result = array_map(function($car, $speed) {
return $car . ' ' . $speed;
}, $cars, $speed);
var_dump($result);
使用このコード100%作業:
<?php
$cars = array("Volvo","BMW","Toyota");
$speed = array("210","220","330");
$marged_array = [];
$i = 0;
foreach($cars as $c){
array_push($marged_array, $cars[$i]. ' ' .$speed[$i]);
$i++;
}
print_r($marged_array);
//Array ([0] => Volvo 210 [1] => BMW 220 [2] => Toyota 330)
?>
これは動作しますが、a) 'array_push()'は不要で、b)はスペルミスを含んでいます。c) '?>'タグを使用しています。 – localheinz
第一: 0123を使用して最初の配列をループする
2:concatenate
両variable
3:new array
に値をプッシュ。
<?php
$cars=array("Volvo","BMW","Toyota");
$speed=array("210","220","330");
$new_array =array();
foreach($cars as $key=>$c)
{
$new_array[]=$c.' '.$speed[$key];
}
print_r($new_array);
?>
注:上記のコードは、両方の配列は要素と同じインデックスの同じ数を持っているときにのみ動作します。
@Dowvoterあなたは説明してください。それはなぜdownvoteに値するのですか?私は自分の間違いを訂正することができます。 – JYoThI
これは、すべての値を1つの配列に入れます。
<?php
$cars=array("Volvo","BMW","Toyota");
$speed=array("210","220","330");
$merge=[];
for ($x = 0; $x < sizeof($cars); $x++) {
array_push($merge,$cars[$x] .' '. $speed[$x]);
}
?>
私は私の答えを説明するいくつかの未知の理由のためにdownvoteを受け取ってきたようにEDIT。
この場合はcar配列をループし、2つの配列の連結をマージ配列に追加します。
このコードでは、受け入れられた回答と同じ結果が得られます。
は、このようなシナリオのためのPHPには方法がありませんが、あなたはこれを行うことができます。
$cars=array("Volvo","BMW","Toyota");
$speed=array("210","220","330");
$newArr = array();
foreach($cars as $cKey => $cVal){
$newArr[] = $cVal.' '.$speed[$cKey];
}
print_r($newArr);
を達成するためにarray_map
を使用しています。例を参照してください:あなたが欲しい
$speed=array("210","220","330");
$merge=array_combine($cars,$speed);
$arr= array(); // new array for storing desired data
foreach($merge as $k=>$v){
$arr[] = $k .' '.$v;
}
print_r($arr);
Output:
Array
(
[0] => Volvo 210
[1] => BMW 220
[2] => Toyota 330
)
なぜ 'array_combine()'ですか? – axiac
これは、両方の配列を1つの結合配列で結合します。 foreachループを使用することができます。 ([Volvo] => 210 [BMW] => 220 [Toyota] => 330) アレイの組み合わせは次のようになります。 –
は連結が、マッピングではありません。 ['array_map()'](http://php.net/manual/en/function.array-map.php)を読んでください。 – axiac
OPが投稿する前に回答を検索しないと、ボランティアの時間が無駄になり、モデレータが最終的に解決しなければならない不要なサイトの膨張が発生します。今後、より完全に研究してください。あなたの質問は明らかに(私が証明したように)よく研究されていないので、私のdownvoteの価値がある。 – mickmackusa