Maison  >  Article  >  développement back-end  >  Comment rechercher et supprimer des éléments à l'aide de la manipulation de tableaux PHP

Comment rechercher et supprimer des éléments à l'aide de la manipulation de tableaux PHP

PHPz
PHPzoriginal
2023-04-26 10:31:09593parcourir

PHP est un langage de script côté serveur très populaire et largement utilisé dans le développement Web. En PHP, les tableaux sont un type de données très courant et sont souvent utilisés pour stocker des collections de données associées.

À mesure que les données continuent d'augmenter, il est parfois nécessaire de rechercher ou de supprimer certains éléments du tableau. Dans cet article, nous verrons comment manipuler des tableaux à l'aide de PHP pour rechercher et supprimer des éléments.

1. Opérations de base des tableaux

(1) Créer un tableau

En PHP, vous pouvez créer un nouveau tableau via la fonction array() :

$numbers = array(1, 2, 3, 4, 5);

Vous pouvez également utiliser l'opérateur [] pour créer un tableau :

$numbers = [1, 2, 3, 4, 5];

(2) Pour accéder aux éléments du tableau

Lors de l'accès aux éléments du tableau, vous pouvez utiliser l'opérateur [] plus l'indice de l'élément. Les indices du tableau commencent à 0, donc le premier élément a un indice de 0.

echo $numbers[0];    //输出1

(3) Modifier les éléments du tableau

Lorsque vous devez modifier un élément du tableau, vous pouvez utiliser l'indice du tableau pour accéder à l'élément et réaffecter la valeur :

$numbers[0] = 10;

Cela changera le premier élément du tableau de 1 à 10.

2. Rechercher des éléments du tableau

(1) Recherche linéaire

En PHP, utilisez une boucle for pour comparer les éléments du tableau un par un pour trouver des éléments spécifiques :

function linear_search($arr, $x) {
  for ($i=0; $i < count($arr); $i++) {
    if ($arr[$i] == $x) {
      return $i;
    }
  }
  return -1;
}

Une fonction appelée Linear_search est définie ici, acceptant deux paramètres : un tableau et la valeur à trouver. Il utilise une boucle for pour parcourir le tableau, et une fois l'élément cible trouvé, son index est renvoyé.

L'inconvénient de cette méthode de recherche est que dans le pire des cas, l'ensemble du tableau doit être comparé et la complexité temporelle est O(n).

(2) Recherche binaire

La recherche binaire est une méthode de recherche plus efficace, qui peut raccourcir le temps de recherche à O(log n) dans certains cas.

Cette méthode ne fonctionne que sur les tableaux triés. Voici l'idée de base : vous pouvez affiner votre recherche de moitié à chaque fois.

function binary_search($arr, $x) {
  $low = 0;
  $high = count($arr) - 1;
    
  while ($low <= $high) {
    $mid = floor(($low + $high) / 2);
        
    if ($arr[$mid] < $x) {
      $low = $mid + 1;
    }
    else if ($arr[$mid] > $x) {
      $high = $mid - 1;
    }
    else {
      return $mid;
    }
  }
    
  return -1;
}

Une fonction appelée binaire_search est définie ici, acceptant deux paramètres : un tableau et la valeur à trouver. Il utilise une boucle while pour localiser l'emplacement de l'élément cible.

(3) Rechercher à l'aide de la fonction in_array

En PHP, vous pouvez utiliser la fonction intégrée in_array pour rechercher des éléments dans un tableau :

$numbers = [10, 20, 30, 40, 50];

if (in_array(30, $numbers)) {
  echo "Found";
} else {
  echo "Not found";
}

Ce programme affichera "Found" car le tableau en contient 30.

3. Supprimer les éléments du tableau

(1) Utilisez la fonction unset pour supprimer

En PHP, vous pouvez utiliser la fonction intégrée unset pour supprimer des éléments du tableau. Si l'élément à supprimer est le dernier élément du tableau, vous pouvez utiliser directement la fonction array_pop.

$numbers = [10, 20, 30, 40, 50];

unset($numbers[2]);    //删除30
array_pop($numbers);   //删除50

print_r($numbers);

Ce programme affichera [10, 20, 40] car 30 et 50 ont été supprimés.

(2) Utilisez la fonction array_splice pour supprimer

Une autre façon de supprimer des éléments d'un tableau consiste à utiliser la fonction array_splice. Cette fonction peut supprimer un ou plusieurs éléments simultanément, à partir de n'importe quelle position du tableau.

$numbers = [10, 20, 30, 40, 50];

array_splice($numbers, 2, 1);  //删除30

print_r($numbers);

Ce programme affichera également [10, 20, 40, 50] car 30 est supprimé.

Résumé

PHP fournit de nombreuses fonctions et opérateurs intégrés pour gérer les tableaux. La recherche et la suppression d'éléments de tableau sont l'une des opérations fréquemment utilisées dans le développement PHP, il est donc important de comprendre ces techniques.

Lors de la recherche d'éléments d'un tableau, la recherche linéaire et la recherche binaire sont les méthodes les plus courantes, selon que le tableau est trié ou non. Lors de la suppression d'éléments de tableau, vous pouvez utiliser des fonctions telles que unset, array_pop et array_splice.

Quelle que soit la méthode, vous devez connaître la position et l'indice de l'élément cible pour vous assurer que l'élément du tableau est correctement supprimé.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn