Dans PHP, Array_Filter () est une fonction très pratique qui peut être utilisée pour filtrer les éléments dans un tableau, ne conservant que des éléments qui répondent aux critères. Il est généralement utilisé en conjonction avec les fonctions de rappel, et dans de nombreuses applications pratiques, l'utilisation de fonctions globales (telles que IS_NUMERIC ) pour filtrer les données est une manière concise et efficace.
Cet article utilisera des exemples pour montrer comment utiliser array_filter () avec IS_NUMERIC pour filtrer les éléments numériques dans un tableau.
array_filter(array $array, ?callable $callback = null, int $mode = 0): array
$ Array : Entrez le tableau.
$ rappel : une fonction de rappel utilisée pour déterminer si chaque élément est conservé.
Mode $ : mode filtre, facultatif.
Si la fonction de rappel n'est pas fournie, array_filter () supprimera toutes les valeurs équivalentes à false par défaut (comme false , 0 , "" , null , etc.).
$items = ['apple', 42, '123', null, 0, 'banana', 3.14, '0', true];
$numericItems = array_filter($items, 'is_numeric');
print_r($numericItems);
Array
(
[1] => 42
[2] => 123
[6] => 3.14
[7] => 0
)
Comme vous pouvez le voir, Array_Filter () conserve tous les éléments du tableau qui sont jugés comme des valeurs numériques par IS_NUMERIC . Cela inclut les entiers, les numéros de points flottants, les chaînes numériques (telles que «123» ) et même la chaîne «0» .
Vous pouvez également utiliser IS_NUMERIC avec d'autres conditions, par exemple:
$items = ['apple', 42, '123', null, 0, 'banana', 3.14, '0', true];
// Conserver seulement plus que 10 La valeur de
$filtered = array_filter($items, function ($item) {
return is_numeric($item) && $item > 10;
});
print_r($filtered);
Array
(
[1] => 42
[2] => 123
)
Par exemple, supposons que votre site Web (tel que https://m66.net/form-handler.php ) reçoit un tableau de données contenant une entrée utilisateur, qui peut contenir du texte, des valeurs nulles ou des nombres. Vous souhaitez extraire uniquement des nombres pour les statistiques ou la vérification, et vous pouvez rapidement terminer cette tâche avec array_filter () et is_numeric () .
array_filter () peut être utilisé pour filtrer les éléments du tableau.
Il est très simple et efficace lorsqu'il est utilisé avec des fonctions globales telles que IS_NUMERIC .
Le filtrage complexe peut être effectué grâce à une logique de combinaison supplémentaire via des fonctions anonymes.
La maîtrise de cette technique peut rendre votre code PHP plus flexible et puissant dans le traitement des données.