W3docs

Fonction PHP shuffle()

Découvrez comment la fonction shuffle() de PHP réordonne aléatoirement les éléments d'un array en place, avec des exemples pratiques.

Bienvenue dans notre guide complet sur la fonction PHP shuffle. Dans cet article, nous expliquerons ce que fait la fonction shuffle, comment elle fonctionne, et nous vous fournirons des exemples pratiques de son utilisation dans vos projets PHP.

La fonction shuffle en PHP est une fonction intégrée qui mélange les éléments d'un array de manière aléatoire. Elle modifie l'array d'origine directement et retourne une valeur boolean (true en cas de succès, false en cas d'échec).

La fonction shuffle fonctionne en réarrangeant les éléments d'un array dans un ordre aléatoire. Elle utilise le générateur de nombres aléatoires de PHP pour garantir que chaque permutation est également probable.

Voici la syntaxe de la fonction shuffle :

shuffle(array &$array): bool // Note: array type hint requires PHP 8.0+

Le paramètre $array est passé par référence, ce qui signifie que l'array d'origine est modifié directement. La fonction retourne true en cas de succès ou false en cas d'échec.

Remarque : En PHP 8.1+, passer une valeur non-array à shuffle() déclenche un avertissement de dépréciation.

Examinons quelques exemples pratiques d'utilisation de la fonction shuffle en PHP.

Exemple 1 : Mélanger un array de nombres

Exemple de mélange d'un array de nombres en PHP

php— editable, runs on the server

Résultat :

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

Exemple 2 : Mélanger un array de chaînes de caractères

Exemple de mélange d'un array de chaînes de caractères en PHP

php— editable, runs on the server

Résultat :

Array
(
    [0] => kiwi
    [1] => banana
    [2] => grape
    [3] => apple
    [4] => orange
)

Exemple 3 : Mélanger un array associatif

Exemple de mélange d'un array associatif en PHP

Notez que shuffle() réindexe toujours les arrays avec des clés numériques séquentielles, en supprimant toutes les clés string existantes. Pour conserver les clés associatives, vous devez mélanger les clés manuellement comme indiqué ci-dessous.

<?php

$person = ["name" => "John", "age" => 30, "city" => "New York"];

// Shuffle the keys of the array
$keys = array_keys($person);
shuffle($keys);

// Create a new array with the shuffled keys
$shuffled_person = [];
foreach ($keys as $key) {
    $shuffled_person[$key] = $person[$key];
}

print_r($shuffled_person);

Résultat :

Array
(
    [city] => New York
    [age] => 30
    [name] => John
)

Dans cet article, nous avons expliqué ce qu'est la fonction shuffle, comment elle fonctionne, et fourni des exemples pratiques de son utilisation dans vos propres projets PHP. Nous espérons que ce guide vous a été utile et que vous pouvez désormais utiliser la fonction shuffle en toute confiance.

Diagramme :

graph TD
A((array)) --input--> B(shuffle)
B --output--> C((modified array))

Merci d'avoir lu notre guide sur la fonction shuffle() en PHP. Si vous avez des questions ou des commentaires, n'hésitez pas à nous contacter.

Pratique

Pratique
Quel est le rôle de la fonction shuffle() en PHP ?
Quel est le rôle de la fonction shuffle() en PHP ?
Was this page helpful?