PHP 配列Aの任意の位置に配列Bを上書きするには?

ショコラ
ショコラ

PHP 配列Aの任意の位置に配列Bを上書きするには?

array_spliceを使ってみる。

もっさん先輩
もっさん先輩

配列Aのある位置に配列Bで上書きするにはこれでいけそう。

<?
$a = [
 [1,2,3],
 [2,3,4],
 [3,4,5],
 [4,5,6],
 [5,6,7],
];

$b = [
 ['a1','b1','c1'],
 ['a2','b2','c2'],
];

array_splice($a,2,count($b),$b); // 2が任意の位置
var_dump( $a );
?>
array(5) {
  [0]=>
  array(3) {
    [0]=>
    int(1)
    [1]=>
    int(2)
    [2]=>
    int(3)
  }
  [1]=>
  array(3) {
    [0]=>
    int(2)
    [1]=>
    int(3)
    [2]=>
    int(4)
  }
  [2]=>
  array(3) {
    [0]=>
    string(2) "a1"
    [1]=>
    string(2) "b1"
    [2]=>
    string(2) "c1"
  }
  [3]=>
  array(3) {
    [0]=>
    string(2) "a2"
    [1]=>
    string(2) "b2"
    [2]=>
    string(2) "c2"
  }
  [4]=>
  array(3) {
    [0]=>
    int(5)
    [1]=>
    int(6)
    [2]=>
    int(7)
  }
}

以上

Scroll to Top