Heim >Backend-Entwicklung >PHP-Problem >So wählen Sie per PHP zufällig mehrere Elemente aus einem Array aus

So wählen Sie per PHP zufällig mehrere Elemente aus einem Array aus

PHPz
PHPzOriginal
2023-04-17 14:58:181237Durchsuche

Beim Schreiben von PHP-Programmen müssen Sie häufig zufällige Operationen an Arrays ausführen, z. B. die zufällige Auswahl mehrerer Elemente aus einem Array. In diesem Artikel wird erläutert, wie diese Funktion über die PHP-Sprache implementiert wird.

1. Verwenden Sie die Funktion array_rand

Die Funktion array_rand kann zufällig eine bestimmte Anzahl von Elementen aus einem Array auswählen. Sein Funktionsprototyp lautet wie folgt:

array array_rand ( array $array , int $num )

Unter diesen stellt der Parameter $array das Array der auszuwählenden Elemente und der Parameter $num die auszuwählende Anzahl dar. Die Funktion gibt ein Array zurück, das die Schlüssel zufällig ausgewählter Array-Elemente enthält.

Zum Beispiel haben wir das folgende Array:

$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);

Wir möchten zufällig 3 Elemente aus diesem Array auswählen und den Schlüsselnamen des ausgewählten Elements zurückgeben. Der Code kann wie folgt geschrieben werden:

$keys = array_rand($data, 3);

print_r($keys);

Das Ausgabeergebnis ist:

Array
(
    [0] => 4
    [1] => 2
    [2] => 0
)

Das bedeutet, dass die Elemente mit den Schlüsselnamen 4, 2 und 0 ausgewählt werden. Wir können auf diese Elemente zugreifen, indem wir beispielsweise eine Schleife durchlaufen:

foreach ($keys as $key) {
    echo $data[$key] . '<br>';
}

Das Ausgabeergebnis ist:

peach
orange
apple

2. Verwenden Sie die Funktionen shuffle und array_slice

Eine andere Möglichkeit, Elemente aus einem Array zufällig auszuwählen, besteht darin, die Reihenfolge des Arrays zu ändern. und dann die ersten paar Elemente herausnehmen. Die spezifischen Schritte sind wie folgt:

  1. Verwenden Sie die Shuffle-Funktion, um die Reihenfolge des Arrays zu ändern.
$data = array(
    'apple',
    'banana',
    'orange',
    'pear',
    'peach',
    'grape'
);

shuffle($data);
  1. Verwenden Sie die Funktion array_slice, um die ersten paar Elemente herauszunehmen.
$subset = array_slice($data, 0, 3);

print_r($subset);

Das Ausgabeergebnis ist:

Array
(
    [0] => orange
    [1] => grape
    [2] => apple
)

3. Verwenden Sie die Rand-Funktion. Wenn Sie ein Element zufällig aus einem Array auswählen möchten, können Sie auch die Rand-Funktion verwenden. Die spezifischen Schritte sind wie folgt:

Ermitteln Sie die Gesamtzahl der Array-Elemente.
  1. $count = count($data);
Verwenden Sie die Rand-Funktion, um eine Zufallszahl zwischen 0 und der Gesamtzahl der Array-Elemente minus 1 zu generieren.
  1. $index = rand(0, $count - 1);
Gibt das Array-Element zurück, das dem Schlüsselnamen entspricht.
  1. echo $data[$index];
  2. Dies implementiert die Funktion der zufälligen Auswahl eines Elements aus einem Array.

Zusammenfassung

In diesem Artikel werden drei Methoden zur zufälligen Auswahl von Elementen aus einem Array vorgestellt, einschließlich der Verwendung der Funktionen array_rand, shuffle und array_slice, rand. Je nach Bedarf können bestimmte Methoden ausgewählt werden, und auch die Leistung der verschiedenen Methoden variiert. In der tatsächlichen Entwicklung wird empfohlen, die für die jeweilige Situation am besten geeignete Methode auszuwählen.

Das obige ist der detaillierte Inhalt vonSo wählen Sie per PHP zufällig mehrere Elemente aus einem Array aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn