Maison développement back-end Problème PHP Comment supprimer les valeurs nulles du tableau php

Comment supprimer les valeurs nulles du tableau php

Apr 20, 2023 am 09:10 AM

Dans la programmation PHP, nous rencontrons souvent des situations où les valeurs nulles​​dans les tableaux doivent être supprimées. Cette situation peut se produire lors du nettoyage des données, du filtrage des données et d'autres scénarios. Il existe plusieurs façons d'y parvenir en PHP, et nous les examinerons en détail ci-dessous, ainsi que leurs avantages et inconvénients.

Méthode 1 : utilisez la fonction array_filter()

La fonction array_filter() peut renvoyer un nouveau tableau, dans lequel les éléments qui ne remplissent pas les conditions de la fonction personnalisée sont filtrés. Nous pouvons construire une fonction personnalisée pour déterminer si un élément est nul.

L'exemple de code est le suivant :

$array = array("foo", "", "bar", null, "baz");
$new_array = array_filter($array, function($item) {
    return !empty($item);
});
Copier après la connexion

Dans cet exemple, le tableau $array contient des chaînes vides, des valeurs nulles et des éléments non vides via le array_filter()<.>, nous obtenons un nouveau tableau qui ne contient pas de valeurs nulles, à savoir <code>$new_array. $array 数组中包含了空字符串、null 值和非空元素,通过 array_filter() 函数,我们得到了一个不包含空值的新数组,即 $new_array

需要注意的是, array_filter() 函数默认会去掉以下值:

  • "" (空字符串)
  • 0 (整数 0)
  • 0.0 (浮点数 0)
  • "0" (字符串 "0")
  • false (布尔值 false)
  • null

如果需要去掉其他值,可以通过自定义函数传递第二个参数进行过滤。

优点:array_filter() 函数使用简单,可以自定义过滤条件。

缺点:相比其他方法,此方法性能较差,中大型数组尤其如此。

方法二:使用 foreach 循环去除空值

此方法较为直接,可以通过 foreach 循环遍历数组,然后利用 PHP 的弱类型特性(空值会被自动转换成 false)来判断并去除空值。

示例代码如下:

$array = array("foo", "", "bar", null, "baz");
foreach($array as $key => $value) {
    if(!$value) {
        unset($array[$key]);
    }
}
Copier après la connexion

该例中,我们遍历了 $array 数组,如果元素的值为 false,即被判定为空值,则使用 unset() 函数移除该元素。

优点:相对于 array_filter() 函数,此方法对于大规模数组性能更优。

缺点:需要手动添加条件判断,代码不够简洁。

方法三:使用 array_diff() 函数

array_diff() 函数用于计算数组的值的差集。我们可以使用它来移除空值。

示例代码如下:

$array = array("foo", "", "bar", null, "baz");
$new_array = array_diff($array, array("", null));
Copier après la connexion

该例中,我们使用 array_diff() 函数计算 $array 数组和一个包含空字符串和 null 值的数组的差集,从而得到一个新数组 $new_array

Il est à noter que la fonction array_filter() supprimera par défaut les valeurs suivantes :

  • "" (chaîne vide)
  • 0 (entier 0)
  • 0.0 (Nombre à virgule flottante 0)
  • "0" (Chaîne "0")
  • false (Booléen faux)
  • null
Si vous devez supprimer d'autres valeurs, vous pouvez transmettre le deuxième paramètre via une fonction personnalisée pour le filtrage.

Avantages : La fonction array_filter() est simple à utiliser et les conditions de filtrage peuvent être personnalisées.

Inconvénients : Par rapport à d'autres méthodes, cette méthode a des performances médiocres, en particulier pour les tableaux moyens et grands.

Méthode 2 : utilisez la boucle foreach pour supprimer les valeurs nulles🎜🎜Cette méthode est plus directe. Vous pouvez parcourir le tableau via la boucle foreach, puis utiliser la fonctionnalité de type faible de PHP (les valeurs nulles seront automatiquement converties en faux) pour déterminer. et supprimez les valeurs nulles. 🎜🎜L'exemple de code est le suivant : 🎜rrreee🎜Dans cet exemple, nous parcourons le tableau $array si la valeur de l'élément est fausse, c'est-à-dire qu'il est déterminé comme étant une valeur nulle. , utilisez la fonction unset() pour supprimer l'élément. 🎜🎜Avantages : Par rapport à la fonction <code>array_filter(), cette méthode offre de meilleures performances pour les tableaux à grande échelle. 🎜🎜Inconvénients : le jugement conditionnel doit être ajouté manuellement et le code n'est pas assez concis. 🎜🎜Méthode 3 : utilisez la fonction array_diff() 🎜🎜La fonction array_diff() est utilisée pour calculer l'ensemble de différences de valeurs du tableau. Nous pouvons l'utiliser pour supprimer les valeurs nulles. 🎜🎜L'exemple de code est le suivant : 🎜rrreee🎜Dans cet exemple, nous utilisons la fonction array_diff() pour calculer la différence entre le tableau $array et un tableau contenant chaînes vides et valeurs nulles, obtenant ainsi un nouveau tableau $new_array. Nous pouvons voir que cette méthode peut filtrer plusieurs valeurs à la fois. 🎜🎜Il convient de noter que cette méthode ne peut filtrer que les valeurs nulles codées en dur et ne peut pas personnaliser les conditions de filtrage. 🎜🎜Avantages : Le code est concis et plusieurs valeurs peuvent être filtrées en même temps. 🎜🎜Inconvénients : Impossible de personnaliser les conditions de filtre. 🎜🎜Pour résumer, pour les tableaux à grande échelle, nous vous recommandons d'utiliser la méthode deux ; pour les tableaux à petite échelle, vous pouvez choisir la méthode un ou la méthode trois. 🎜

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. PHP 8 JIT (juste à temps) Compilation: comment cela améliore les performances. Mar 25, 2025 am 10:37 AM

La compilation JIT de PHP 8 améliore les performances en compilant le code fréquemment exécuté en code machine, bénéficiant aux applications avec des calculs lourds et en réduisant les temps d'exécution.

OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. OWASP Top 10 PHP: Décrivez et atténue les vulnérabilités communes. Mar 26, 2025 pm 04:13 PM

L'article traite des 10 meilleures vulnérabilités de l'OWASP dans les stratégies PHP et d'atténuation. Les problèmes clés incluent l'injection, l'authentification brisée et les XS, avec des outils recommandés pour surveiller et sécuriser les applications PHP.

Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Téléchargements de fichiers sécurisés PHP: prévention des vulnérabilités liées au fichier. Mar 26, 2025 pm 04:18 PM

L'article traite de la sécurisation des téléchargements de fichiers PHP pour éviter les vulnérabilités comme l'injection de code. Il se concentre sur la validation du type de fichier, le stockage sécurisé et la gestion des erreurs pour améliorer la sécurité de l'application.

Encryption PHP: cryptage symétrique vs asymétrique. Encryption PHP: cryptage symétrique vs asymétrique. Mar 25, 2025 pm 03:12 PM

L'article traite du cryptage symétrique et asymétrique en PHP, en comparant leur aptitude, leurs performances et leurs différences de sécurité. Le chiffrement symétrique est plus rapide et adapté aux données en vrac, tandis que l'asymétrique est utilisé pour l'échange de clés sécurisé.

Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Authentification PHP & amp; Autorisation: mise en œuvre sécurisée. Mar 25, 2025 pm 03:06 PM

L'article examine la mise en œuvre d'authentification et d'autorisation robustes dans PHP pour empêcher un accès non autorisé, détaillant les meilleures pratiques et recommandant des outils d'amélioration de la sécurité.

Comment récupérer les données d'une base de données à l'aide de PHP? Comment récupérer les données d'une base de données à l'aide de PHP? Mar 20, 2025 pm 04:57 PM

L'article discute de la récupération des données des bases de données à l'aide de PHP, couvrant les étapes, les mesures de sécurité, les techniques d'optimisation et les erreurs communes avec des solutions. COMMANDE CHAPITRE: 159

Protection PHP CSRF: comment empêcher les attaques du CSRF. Protection PHP CSRF: comment empêcher les attaques du CSRF. Mar 25, 2025 pm 03:05 PM

L'article traite des stratégies pour prévenir les attaques du CSRF dans PHP, notamment en utilisant des jetons CSRF, des cookies de même site et une bonne gestion de session.

Quel est le but de mysqli_query () et mysqli_fetch_assoc ()? Quel est le but de mysqli_query () et mysqli_fetch_assoc ()? Mar 20, 2025 pm 04:55 PM

L'article traite des fonctions MySQLI_Query () et MySQLI_Fetch_assoc () en PHP pour les interactions de la base de données MySQL. Il explique leurs rôles, leurs différences et fournit un exemple pratique de leur utilisation. L'argument principal se concentre sur les avantages de l'USIN

See all articles