Random\Randomizer::shuffleBytes

(PHP 8 >= 8.2.0)

Random\Randomizer::shuffleBytesRenvoie une permutation par octet d'une chaîne de caractères

Description

public Random\Randomizer::shuffleBytes(string $bytes): string

Renvoie une permutation uniformément sélectionnée des bytes d'entrée.

Chaque permutation possible des bytes d'entrée est également probable d'être retournée.

Liste de paramètres

bytes

La chaîne de caractères dont les octets sont mélangés.

La chaîne de caractères d'entrée ne sera pas modifiée.

Valeurs de retour

Une permutation des octets de bytes.

Erreurs / Exceptions

Exemples

Exemple #1 Exemple de Random\Randomizer::shuffleBytes()

<?php
$r
= new \Random\Randomizer();

// Mélanger les octets dans une chaîne :
echo "«", $r->shuffleBytes("PHP is great!"), "»\n";
?>

Résultat de l'exemple ci-dessus est similaire à :

« ga rHs!PPiet»

Exemple #2 Mélange par octet des caractères Unicode

<?php
$r
= new \Random\Randomizer();

$unicode = "🍎, 🥝, 🍌, 🍑, 🍇";
$shuffled = $r->shuffleBytes( $unicode );

// Le mélange par octet des caractères non-ASCII les détruit,
// ce qui entraîne des séquences invalides (indiquées par le caractère
// de remplacement Unicode) ou même l'apparition de caractères
// entièrement différents dans la sortie.
echo "Original: ", $unicode, "\n";
echo
"Shuffled: «", $shuffled, "»\n";
echo
"Shuffled Bytes: ", bin2hex($shuffled), "\n";
?>

Résultat de l'exemple ci-dessus est similaire à :

Original: 🍎, 🥝, 🍌, 🍑, 🍇
Shuffled: «� ��,�����🍟,� �� �, �,��»
Shuffled Bytes: 87208e912c8d9fa5f0f0f09f8d9f2cf09f208c9d20f02c209f2c8d8d