Maison  >  Article  >  développement back-end  >  php supprimer le tableau nul

php supprimer le tableau nul

王林
王林original
2023-05-19 16:00:37470parcourir

En PHP, un tableau est un type de données très utile qui peut stocker n'importe quel nombre et type d'éléments. Parfois, nous devons supprimer certains éléments du tableau, notamment les valeurs nulles. Cet article explique comment utiliser PHP pour supprimer les valeurs nulles​​dans un tableau.

  1. Utilisez la fonction unset()

La fonction unset() en PHP peut être utilisée pour supprimer des éléments d'un tableau. Si nous voulons supprimer les valeurs nulles du tableau, nous pouvons le faire en utilisant la fonction unset().

L'exemple de code est le suivant :

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
foreach ($myArray as $key => $value) { 
  if (is_null($value)) { 
    unset($myArray[$key]); 
  } 
} 
print_r($myArray); 
?>

Résultat de sortie :

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

Dans cet exemple, nous créons d'abord un tableau contenant des valeurs nulles. Ensuite, nous utilisons une boucle foreach pour parcourir le tableau et déterminer si l'élément est nul via la fonction is_null(). S'il est nul, utilisez la fonction unset() pour supprimer l'élément. Enfin, nous utilisons la fonction print_r() pour imprimer les résultats et constater que la valeur nulle du tableau a été supprimée.

Remarque : l'utilisation de la fonction unset() modifiera le tableau d'origine et réinitialisera le nom de clé du tableau.

  1. Utilisez la fonction array_filter()

En plus d'utiliser la fonction unset(), nous pouvons également utiliser la fonction array_filter() en PHP pour supprimer les valeurs nulles​​dans le tableau. La fonction array_filter() peut filtrer les éléments d'un tableau en spécifiant une fonction de rappel.

L'exemple de code est le suivant :

<?php 
$myArray = array(1, 2, null, 3, null, 4); 
$newArray = array_filter($myArray, function($element) { 
  return !is_null($element); 
}); 
print_r($newArray); 
?>

Résultat de sortie :

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

Dans cet exemple, nous créons d'abord un tableau contenant des valeurs nulles. Ensuite, nous utilisons la fonction array_filter() pour filtrer les éléments du tableau. Dans la fonction de rappel, nous utilisons la fonction !is_null() pour déterminer si l'élément est nul. S'il n'est pas nul, renvoie l'élément. Enfin, nous utilisons la fonction print_r() pour imprimer les résultats et constater que la valeur nulle du tableau a été supprimée.

Remarque : l'utilisation de la fonction array_filter() renverra un nouveau tableau et le tableau d'origine ne changera pas.

  1. Comparaison des performances

Lors de la suppression de valeurs nulles​​dans un tableau, vous pouvez utiliser la fonction unset() ou la fonction array_filter() pour terminer la tâche. Cependant, leurs performances diffèrent considérablement.

Lorsque nous utilisons la fonction unset(), elle parcourra tout le tableau et modifiera le tableau d'origine. Cela signifie que lorsqu’il y a un grand nombre d’éléments dans le tableau, cela deviendra très lent.

En revanche, lorsque nous utilisons la fonction array_filter(), elle crée un nouveau tableau et ne contient que des éléments qui ne sont pas nuls. Cela signifie que ce sera plus rapide, surtout lorsque le tableau est très grand.

Par conséquent, lorsque vous avez besoin d'une méthode performante pour supprimer les valeurs nulles​​dans un tableau, il est recommandé d'utiliser la fonction array_filter().

Résumé :

PHP est un langage de programmation très puissant qui fournit une variété de méthodes pour gérer les tableaux. Dans cet article, nous avons présenté l'utilisation de la fonction unset() et de la fonction array_filter() pour supprimer les valeurs nulles dans un tableau. Dans le même temps, nous avons également comparé leurs différences de performances. J'espère que cet article vous aidera à mieux comprendre comment supprimer les valeurs nulles d'un tableau en PHP.

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