Les fonctions PHP peuvent rencontrer les situations suivantes lors du renvoi de données de type tableau : si le type de tableau renvoyé est explicitement déclaré, le tableau sera renvoyé directement ; le renvoi d'une valeur nulle provoquera une erreur ; l'appel d'une fonction qui reçoit un tableau peut renvoyer un autre tableau ; .
La fonction PHP renvoie des données de type tableau
En PHP, lorsqu'une fonction renvoie des données de type tableau, vous rencontrez généralement les situations suivantes :
1. Effacer l'indice de type tableau
Une fonction renvoie un tableau. lorsque sa signature indique explicitement que le type de données renvoyé est un tableau. Par exemple :
function get_data(): array { return ['name' => 'John', 'age' => 30]; }
2. Renvoyer null
Certaines fonctions peuvent renvoyer des valeurs nulles, par exemple lorsque les données requises sont introuvables. Cependant, lorsqu'une fonction est déclarée pour renvoyer un type tableau, le renvoi de null génère une erreur.
3. Appelez la fonction qui reçoit le tableau
PHP fournit également certaines fonctions (telles que array_filter()
和 array_map()
),它们接收数组作为参数并返回另一个数组。以下示例显示如何使用 array_filter()
fonction :
function filter_numbers(array $arr) { return array_filter($arr, function($item) { return is_numeric($item); }); } $numbers = [1, 2, 'a', 4, 'b']; $result = filter_numbers($numbers); // $result 现在是一个仅包含数字的数组
Cas pratique : Récupérer la liste des fichiers
Considérons une fonction qui récupère la liste des fichiers dans le répertoire spécifié :
function get_files(string $dir): array { if (!is_dir($dir)) { throw new InvalidArgumentException("$dir is not a valid directory."); } $files = scandir($dir); if ($files === false) { throw new RuntimeException("Failed to scan directory."); } foreach ($files as $key => $file) { if ($file == '.' || $file == '..') { unset($files[$key]); } } return array_values($files); }
Cette fonction renvoie un tableau contenant les noms de fichiers dans le répertoire. Elle gère les répertoires non valides, les échecs d'analyse de répertoire et les déréférences du répertoire actuel et du répertoire parent
.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!