(PHP 4, PHP 5, PHP 7, PHP 8)
array_unshift — 一つ以上の要素を配列の最初に加える
array_unshift() は、array
の先頭に指定された要素を加えます。リストの要素は全体として加えられるため、
加えられた要素の順番は変わらないことに注意してください。
配列の数値添字はすべて新たにゼロから振りなおされます。
リテラルのキーについては変更されません。
注意:
この関数をコールすると、配列の内部ポインタは最初の要素にリセットされます。
array入力の配列。
values加える値。
処理後の array の要素の数を返します。
| バージョン | 説明 |
|---|---|
| 7.3.0 | この関数は、1 つのパラメータでのみ呼び出すことができるようになりました。 前は、少なくとも 2 つのパラメータが必要でした。 |
例1 array_unshift() の例
<?php
$queue = [
"orange",
"banana"
];
array_unshift($queue, "apple", "raspberry");
var_dump($queue);
?>上の例の出力は以下となります。
array(4) {
[0] =>
string(5) "apple"
[1] =>
string(9) "raspberry"
[2] =>
string(6) "orange"
[3] =>
string(6) "banana"
}
例2 連想配列と一緒に使う例
連想配列を別の連想配列の前に加える場合、 追加される配列は、もともとある配列の整数のインデックスに追加されます。
<?php
$foods = [
'apples' => [
'McIntosh' => 'red',
'Granny Smith' => 'green',
],
'oranges' => [
'Navel' => 'orange',
'Valencia' => 'orange',
],
];
$vegetables = [
'lettuce' => [
'Iceberg' => 'green',
'Butterhead' => 'green',
],
'carrots' => [
'Deep Purple Hybrid' => 'purple',
'Imperator' => 'orange',
],
'cucumber' => [
'Kirby' => 'green',
'Gherkin' => 'green',
],
];
array_unshift($foods, $vegetables);
var_dump($foods);
?>上の例の出力は以下となります。
array(3) {
[0]=>
array(3) {
["lettuce"]=>
array(2) {
["Iceberg"]=>
string(5) "green"
["Butterhead"]=>
string(5) "green"
}
["carrots"]=>
array(2) {
["Deep Purple Hybrid"]=>
string(6) "purple"
["Imperator"]=>
string(6) "orange"
}
["cucumber"]=>
array(2) {
["Kirby"]=>
string(5) "green"
["Gherkin"]=>
string(5) "green"
}
}
["apples"]=>
array(2) {
["McIntosh"]=>
string(3) "red"
["Granny Smith"]=>
string(5) "green"
}
["oranges"]=>
array(2) {
["Navel"]=>
string(6) "orange"
["Valencia"]=>
string(6) "orange"
}
}