Maison développement back-end Problème PHP Comment déterminer si un tableau multidimensionnel est vide en php

Comment déterminer si un tableau multidimensionnel est vide en php

Apr 18, 2023 pm 02:11 PM

En PHP, le tableau est l'un des types de données couramment utilisés. En développement, nous devons souvent déterminer si un tableau est vide. Il est très simple de déterminer si un tableau unidimensionnel est vide. Nous pouvons utiliser la fonction empty() ou count() pour le déterminer. Mais pour les tableaux multidimensionnels, la situation est plus compliquée. Cet article explique comment déterminer si un tableau multidimensionnel est vide.

1. Définition d'un tableau multidimensionnel
En PHP, un tableau multidimensionnel est un tableau contenant un ou plusieurs tableaux. Par exemple :

$arr = array(
       array(1, 2, 3),
       array(4, 5, 6),
       array(7, 8, 9)
);
Copier après la connexion

2. Méthodes pour déterminer si un tableau unidimensionnel est vide
1 Utilisez la fonction empty() pour déterminer si une variable est vide lorsque la valeur de la variable est 0, '', Lorsqu'elle est nulle, false. , array(), '0', etc. sont utilisés, la fonction empty() retournera true. Par conséquent, pour un tableau unidimensionnel, utilisez simplement la fonction empty() pour déterminer s’il est vide.

Par exemple :

$arr = array('a', 'b', 'c');
if(empty($arr)){
   echo '数组为空';
}else{
   echo '数组不为空';
}
Copier après la connexion
Le résultat de sortie est "le tableau n'est pas vide".

2. Utilisez la fonction count() pour juger. La fonction count() peut renvoyer le nombre d'éléments du tableau. Si le tableau est vide, il renvoie 0. Par conséquent, nous pouvons utiliser la fonction count() pour déterminer si un tableau unidimensionnel est vide. Par exemple :

$arr = array('a', 'b', 'c');
if(count($arr)==0){
   echo '数组为空';
}else{
   echo '数组不为空';
}
Copier après la connexion

Le résultat de sortie est "le tableau n'est pas vide".

3. Méthode pour juger si un tableau multidimensionnel est vide

La méthode ci-dessus ne s'applique pas aux tableaux multidimensionnels. Si vous souhaitez juger si un tableau multidimensionnel est vide, vous pouvez utiliser la méthode récursive pour juger.


1. Utilisez la récursion pour déterminer si un tableau multidimensionnel est vide

La récursion est une méthode d'appel à l'intérieur d'une fonction, qui peut parcourir et exploiter des structures de données imbriquées multicouches. En PHP, nous pouvons utiliser la récursivité pour parcourir un tableau multidimensionnel afin de déterminer s'il est vide.


Par exemple :

function is_empty_array($arr){
   if(!is_array($arr)){//如果不是数组,直接返回false
      return false;
   }
   foreach($arr as $val){
      if(is_array($val)){//如果该元素是数组,则递归遍历,直到找到非数组元素
         if(!is_empty_array($val)){
            return false;
         }
      }else{//如果该元素不是数组,则判断其是否为空
         if(!empty($val)){
            return false;
         }
      }
   }
   return true;
}
Copier après la connexion

La fonction ci-dessus est utilisée pour déterminer si un tableau multidimensionnel est vide. S'il est vide, il renvoie vrai, sinon il renvoie faux. La boucle foreach est utilisée dans la fonction pour parcourir les éléments du tableau. Si l'élément est un tableau, la fonction is_empty_array() est appelée de manière récursive pour continuer à parcourir l'élément, sinon, il est jugé si l'élément est vide ;

Par exemple :

$arr = array(
   array(1, 2, 3),
   array(),
   array(array()),
   array(''),
   '',
   array(array())
);
if(is_empty_array($arr)){
   echo '数组为空';
}else{
   echo '数组不为空';
}
Copier après la connexion

Le résultat de sortie est "le tableau est vide".

Dans l'exemple ci-dessus, $arr contient plusieurs tableaux, certains tableaux sont vides, certains tableaux contiennent des éléments vides et certains tableaux sont des tableaux imbriqués. Utilisez la fonction is_empty_array() pour déterminer facilement si le tableau est vide.

2. Utilisez la fonction array_filter() pour déterminer si le tableau multidimensionnel est vide

De plus, nous pouvons également utiliser la fonction array_filter() pour déterminer si le tableau multidimensionnel est vide. La fonction array_filter() peut être utilisée pour supprimer les éléments vides d'un tableau et renvoyer un nouveau tableau. Si le tableau renvoyé est vide, le tableau d'origine est vide.


Par exemple :

$arr = array(
   array(1, 2, 3),
   array(),
   array(array()),
   array(''),
   '',
   array(array())
);
$new_arr = array_filter($arr);
if(empty($new_arr)){
   echo '数组为空';
}else{
   echo '数组不为空';
}
Copier après la connexion

Le résultat de sortie est "le tableau est vide".

Dans l'exemple ci-dessus, utilisez la fonction array_filter() pour filtrer les éléments vides du tableau et obtenir un nouveau tableau $new_arr. Si $new_arr est vide, le tableau d'origine est vide.

4. Notes

1. Lorsque vous parcourez des tableaux multidimensionnels de manière récursive, faites attention à déterminer si chaque élément du tableau est un tableau.

2. Lorsque vous utilisez la fonction array_filter() pour filtrer un tableau, faites attention au type de valeur de retour. Si vous souhaitez renvoyer la valeur clé du tableau d'origine, vous pouvez utiliser array_filter($arr), sinon vous pouvez. utilisez array_values(array_filter($arr)).

Résumé

Pour déterminer si un tableau multidimensionnel est vide, vous devez utiliser la récursion ou la fonction array_filter(). La méthode récursive est plus flexible et la valeur de retour peut être personnalisée tandis que l'utilisation de la fonction array_filter() est plus simple ; et plus pratique, mais vous devez faire attention au type de valeur de retour. En développement réel, vous pouvez choisir une méthode adaptée à vos besoins.

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.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

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é.

Quel est le but des déclarations préparées en PHP? Quel est le but des déclarations préparées en PHP? Mar 20, 2025 pm 04:47 PM

Les déclarations préparées dans PHP améliorent la sécurité et l'efficacité de la base de données en empêchant l'injection SQL et en améliorant les performances de la requête par compilation et réutilisation. Compilation de caractéristiques: 159

Limitation du taux de l'API PHP: stratégies de mise en œuvre. Limitation du taux de l'API PHP: stratégies de mise en œuvre. Mar 26, 2025 pm 04:16 PM

L'article traite des stratégies de mise en œuvre de la limitation du taux d'API en PHP, y compris des algorithmes comme un godet de jeton et un seau qui fuit, et en utilisant des bibliothèques comme Symfony / Rate-Limiter. Il couvre également la surveillance, l'ajustement dynamiquement des limites de taux et la main

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