-3

重複の可能性:
3 つの配列を 1 つの配列に結合する

次の配列があります。

$front = array("front_first","front_second");
$back = array("back_first", "back_second", "back_third","back_fourth");

私がやろうとしているのは、それらをマージして、次のような出力が得られるようにすることです。

$final = array(
    "back_first",
    "front_first",
    "back_second",
    "front_second",
    "back_third",
    "front_second",
    "back_fourth",
    "front_second"
);

$final[]空の値のないものに結合できるように、最短の配列の最後の値を繰り返すにはどうすればよいですか?

4

3 に答える 3

0

動作中のコードパッド-bgIYz9iw

$final = array();
for( $i = 0; $i < 4; $i++ ) {
  if( $i > 1 ) {
    $final[] = $back[$i];
    $final[] = $front[1];
  }
  else {
    $final[] = $back[$i];
    $final[] = $front[$i];
  }
}
于 2013-01-17T16:44:01.623 に答える
0

PHPのarray_merge

$final = array_merge($front, $back);

おそらくarray_padとの組み合わせですか?

$front = array_pad($front, count($back)-1, 'second_front');
 $final = array_merge($front, $back);
于 2013-01-17T16:40:34.037 に答える
0

最初のビットは簡単です。array_merge()を使用して結合配列を作成するだけです。

2 番目のビットでは、任意の並べ替えが必要なため、usort()を使用して、コールバック関数で実装する規則に従って配列を並べ替える必要があります。

順番ってそんなに大事?

于 2013-01-17T16:41:26.970 に答える