【PHP】配列の先頭にキーと値を指定して要素を追加する。

array_unshift()だとキーを指定できないので下記のように少々工夫を行う。

$ar = [
	'key1' => 'val1',
	'key2' => 'val2',
	'key3' => 'val3',
	'key4' => 'val4',
];

// いったん配列をひっくり返す
$tmp = array_reverse($ar, true);
// 配列の最後に要素を追加
$tmp['key0'] = 'val0';
// そしてもっかいひっくり返す
$ar = array_reverse($tmp, true);

トリッキーだけどなかなかよさ気。