array_fill

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

array_fillFüllt ein Array mit Werten

Beschreibung

function array_fill(int $start_index, int $count, mixed $value): array

array_fill() füllt ein Array mit count Einträgen mit dem Wert des Parameters value. Die Indizes des Arrays beginnen mit dem Parameter start_index.

Parameter-Liste

start_index

Der erste Index des zurückgegebenen Arrays.

Wenn start_index negativ ist, ist der erste Index des zurückgebenen Arrays start_index und die folgenden Indizes beginnen vor PHP 8.0.0 bei Null; seit PHP 8.0.0 werden negative Indizes normal hochgezählt (siehe Beispiel).

count

Anzahl der einzufügenden Elemente. Muss größer oder gleich 0 und kleiner oder gleich 2147483647 sein.

value

Einzufügender Wert

Rückgabewerte

Gibt das gefüllte Array zurück

Fehler/Exceptions

Wenn count außerhalb des zulässigen Bereichs liegt, wird ein ValueError ausgelöst.

Changelog

Version Beschreibung
8.0.0 Wenn count außerhalb des zulässigen Bereichs liegt, löst array_fill() nun einen ValueError aus; zuvor wurde ein Fehler der Stufe E_WARNING erzeugt, und die Funktion gab false zurück.

Beispiele

Beispiel #1 array_fill()-Beispiel

<?php
$a = array_fill(5, 6, 'Banane');
print_r($a);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Array
(
    [5]  => Banane
    [6]  => Banane
    [7]  => Banane
    [8]  => Banane
    [9]  => Banane
    [10] => Banane
)

Beispiel #2 array_fill()-Beispiel mit einem negativen Startindex

<?php
$a = array_fill(-2, 4, 'Birne');
print_r($a);
?>

Das oben gezeigte Beispiel erzeugt mit PHP 8 folgende Ausgabe:

Array
(
    [-2] => Birne
    [-1] => Birne
    [0] => Birne
    [1] => Birne
)

Das oben gezeigte Beispiel erzeugt mit PHP 7 folgende Ausgabe:

Array
(
    [-2] => Birne
    [0] => Birne
    [1] => Birne
    [2] => Birne
)

Es ist zu beachten, dass es den Index -1 vor PHP 8.0.0 nicht gibt.

Anmerkungen

Für eine detaillierte Erklärung von negativen Schlüsseln siehe auch den Abschnitt Arrays des Handbuchs.

Siehe auch

  • array_fill_keys() - Befüllt ein Array mit Werten mit den übergebenen Schlüsseln
  • str_repeat() - Wiederholt einen String
  • range() - Erstellt ein Array mit einem Bereich von Elementen

add a note

User Contributed Notes 6 notes

up
84
csst0266 at cs dot uoi dot gr
22 years ago
This is what I recently did to quickly create a two dimensional array (10x10), initialized to 0:

<?php
  $a = array_fill(0, 10, array_fill(0, 10, 0));
?>

This should work for as many dimensions as you want, each time passing to array_fill() (as the 3rd argument) another array_fill() function.
up
47
anatoliy at ukhvanovy dot name
12 years ago
If you need negative indices:
<?php
$b = array_fill(-2, 4, 'pear');//this is not what we want
$c = array_fill_keys