Maison  >  Article  >  développement back-end  >  Comment supprimer aléatoirement une ou plusieurs cellules d'un tableau en PHP

Comment supprimer aléatoirement une ou plusieurs cellules d'un tableau en PHP

PHPz
PHPzavant
2024-03-19 11:58:191081parcourir

L'éditeur PHP Yuzai vous présentera comment supprimer aléatoirement une ou plusieurs unités d'un tableau. En PHP, vous pouvez utiliser la fonction array_rand() pour réaliser cette fonctionnalité. Cette fonction peut sélectionner aléatoirement une ou plusieurs clés dans le tableau et renvoie le nom de la clé au lieu de la valeur. La valeur correspondante peut être obtenue via le nom de la clé renvoyé. Grâce à la fonction array_rand(), vous pouvez facilement implémenter l'opération de suppression aléatoire d'une ou plusieurs unités d'un tableau, offrant ainsi plus de possibilités pour votre travail de développement.

Comment supprimer aléatoirement une ou plusieurs cellules d'un tableau

Array est une collection ordonnée utilisée dans php pour stocker des données. Ils consistent en une collection de paires clé-valeur, où la clé est un identifiant unique et la valeur est les données stockées. Supprimer aléatoirement une ou plusieurs cellules d’un tableau est une opération courante, et il existe plusieurs façons de le faire.

Élément unique :

1. Fonction mt_rand() :

$array = [1, 2, 3, 4, 5];
$random_index = mt_rand(0, count($array) - 1);
$random_element = $array[$random_index];

2. Fonction array_rand() :

$array = [1, 2, 3, 4, 5];
$random_key = array_rand($array);
$random_element = $array[$random_key];

Éléments multiples :

1. Fonction array_slice() :

$array = [1, 2, 3, 4, 5];
$num_elements = 3; // 随机取出的元素数量
$random_elements = array_slice($array, 0, $num_elements, true);

2. Fonction shuffle() et fonction array_slice() :

$array = [1, 2, 3, 4, 5];
shuffle($array); // 打乱数组元素顺序
$num_elements = 3; // 随机取出的元素数量
$random_elements = array_slice($array, 0, $num_elements);

3. Fonction auto-implémentée :

function random_elements($array, $num_elements) {
$keys = array_rand($array, $num_elements);
$random_elements = array();
foreach ($keys as $key) {
$random_elements[] = $array[$key];
}
return $random_elements;
}

Considérations d'efficacité :

  • Pour les tableaux plus petits, la fonction mt_rand()array_rand() est plus efficace.
  • Pour les tableaux plus grands, les fonctions array_slice()shuffle() sont plus efficaces car elles évitent de parcourir l'intégralité du tableau.
  • Si vous devez supprimer aléatoirement des éléments d'un tableau brouillé, la fonction array_slice() est le choix le plus efficace.

Conseils supplémentaires :

  • mt_srand() La fonction peut définir la valeur de départ du générateur de nombres aléatoires pour garantir le même résultat à chaque fois qu'il est exécuté.
  • array_values() La fonction convertit un tableau associatif en un nouveau tableau contenant uniquement des valeurs, ce qui facilite la suppression aléatoire d'éléments du tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer