Maison >développement back-end >Problème PHP >Comment supprimer la valeur nulle dans un tableau en php
PHP est un langage de script largement utilisé dans le domaine du développement Web. En développement, nous devons souvent utiliser des tableaux. Lorsque nous rencontrons un tableau contenant des valeurs nulles, nous devrons peut-être le supprimer. Cet article explique comment supprimer les valeurs nulles dans un tableau à l'aide de PHP.
1. Traversée et suppression
Le moyen le plus simple est de parcourir et de supprimer les valeurs nulles. Nous créons d’abord un tableau contenant des valeurs nulles.
$arr = array(1, 2, null, 4, null, 6); print_r($arr);
Résultat de sortie :
Array ( [0] => 1 [1] => 2 [2] => [3] => 4 [4] => [5] => 6 )
Nous pouvons parcourir le tableau à travers une boucle foreach et utiliser unset() pour supprimer les éléments contenant des valeurs nulles.
foreach ($arr as $key => $value){ if(is_null($value)){ unset($arr[$key]); } } print_r($arr);
Résultat de sortie :
Array ( [0] => 1 [1] => 2 [3] => 4 [5] => 6 )
Utilisez la fonction unset() pour supprimer des éléments du tableau. La fonction is_null() est utilisée pour déterminer si elle est nulle, afin que vous puissiez rapidement supprimer les éléments nuls du tableau.
2. Fonction array_filter()
Une autre méthode consiste à utiliser la fonction intégrée PHP array_filter(). Cette fonction accepte un tableau et renvoie un nouveau tableau. Elle filtre les valeurs du tableau d'origine via la fonction de rappel spécifiée et renvoie le nouveau tableau. Si la fonction de rappel renvoie vrai, l'élément sera conservé, et si elle renvoie faux, l'élément sera supprimé.
Par conséquent, nous pouvons créer une fonction anonyme pour déterminer si l'élément est nul et utiliser la fonction array_filter() pour filtrer.
$arr = array(1, 2, null, 4, null, 6); $new_arr = array_filter($arr, function($value){ return $value !== null; }); print_r($new_arr);
Résultat de sortie :
Array ( [0] => 1 [1] => 2 [3] => 4 [5] => 6 )
3. Fonction array_diff()
Vous pouvez également utiliser la fonction array_diff() pour effectuer des opérations de différence de tableau afin de supprimer les éléments de valeur nulle du tableau d'origine. Cette méthode nécessite une opération de différence entre le tableau d'origine et un tableau contenant uniquement des valeurs nulles, et le résultat est un nouveau tableau qui ne contient pas de valeurs nulles.
$arr = array(1, 2, null, 4, null, 6); $null_arr = array(null); $new_arr = array_diff($arr, $null_arr); print_r($new_arr);
Résultat de sortie :
Array ( [0] => 1 [1] => 2 [3] => 4 [5] => 6 )
4. Fonction array_map()
Enfin, nous pouvons utiliser la fonction array_map() pour filtrer les valeurs nulles du tableau. Cette fonction accepte un tableau et renvoie un nouveau tableau. Les valeurs du tableau d'origine sont traitées via la fonction de rappel spécifiée et le nouveau tableau est renvoyé.
Utilisez la fonction array_map() pour convertir les valeurs nulles en n'importe quelle valeur, puis filtrez-les. Ici, nous convertissons la valeur nulle en une chaîne vide, puis la filtrons.
$arr = array(1, 2, null, 4, null, 6); $new_arr = array_map(function($value){ return $value ?? ''; }, $arr); print_r($new_arr);
Résultat de sortie :
Array ( [0] => 1 [1] => 2 [2] => [3] => 4 [4] => [5] => 6 )
Utilisez l'opérateur ?? pour convertir la valeur nulle en une chaîne vide, puis utilisez la fonction array_filter() pour filtrer afin d'obtenir un nouveau tableau qui ne contient pas de valeurs nulles.
Cet article présente 4 méthodes pour supprimer les valeurs nullesdans les tableaux PHP, à savoir la suppression de traversée, la fonction array_filter(), la fonction array_diff() et la fonction array_map(). Différentes méthodes conviennent à différents scénarios. Lors du développement, vous pouvez choisir la méthode qui vous convient en fonction de la situation réelle.
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!