En programmation PHP, le tableau est un type de données très courant. Le filtrage et le filtrage des tableaux sont l'une des opérations courantes. A ce stade, vous pouvez utiliser la fonction de tableau array_filter() fournie par PHP. Cet article présentera et démontrera l'utilisation de cette fonction.
1. Utilisation de base de la fonction array_filter()
La fonction de la fonction array_filter() est de filtrer et de filtrer le tableau. La syntaxe de base est la suivante :
array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
Parmi eux, le paramètre $array est le tableau à filtrer et à filtrer ; le paramètre $callback est un paramètre facultatif, utilisé pour spécifier une fonction de rappel pour juger chaque élément du tableau, et les éléments qui remplissent les conditions seront conservés, et les éléments qui ne remplissent pas les conditions seront supprimés ; le paramètre $flag est également un paramètre facultatif, utilisé pour spécifier les règles de la méthode de filtrage. Il y a quatre règles au total, à savoir. :
2. Explication détaillée du paramètre $array
Ce paramètre est un paramètre obligatoire et représente le tableau à filtrer et à filtrer. L'utilisation spécifique est la suivante :
$arr = array(1, 2, 3, 4, 5); $newArr = array_filter($arr); print_r($newArr); //输出:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Dans l'exemple ci-dessus, $arr est le tableau d'origine à filtrer et filtrer, et $newArr est le nouveau tableau obtenu après traitement par la fonction array_filter(). Si le paramètre $callback n'est pas transmis, tous les éléments non « faux » de $array seront conservés et le résultat de sortie sera cohérent avec le tableau d'origine.
3. Explication détaillée du paramètre $callback
Le paramètre $callback est facultatif Si ce paramètre n'est pas spécifié, la fonction utilisera les règles de filtrage et de filtrage suivantes par défaut :
Conserve tous les non-"false". " éléments dans $array ;La fonction de rappel doit accepter un paramètre, qui est l'élément à traiter, puis renvoyer une valeur si la valeur renvoyée est "true", cela signifie que l'élément répond aux exigences et doit être conservé. Si la valeur renvoyée est « false », cela signifie que l'élément ne répond pas aux exigences et doit être supprimé.
La syntaxe de base de la fonction de rappel est la suivante :
function callback_function($element) { // 进行一些处理,然后返回true或false }
Ce qui suit est un exemple :
$arr = array(1, 2, 3, 4, 5); $newArr = array_filter($arr, function($element) { return $element > 2; }); print_r($newArr); //输出:Array ( [2] => 3 [3] => 4 [4] => 5 )
Dans l'exemple ci-dessus, nous transmettons une fonction de rappel, qui est utilisée pour déterminer si chaque élément du tableau est supérieur que 2. Si oui, conservez l'élément, sinon supprimez l'élément. Après traitement, seuls les éléments 3, 4 et 5 sont conservés.
4. Explication détaillée du paramètre $flag
Le paramètre $flag est également un paramètre facultatif, utilisé pour spécifier les règles de la méthode de filtrage. Si ce paramètre n'est pas précisé, la règle "filtrage clé-valeur" est utilisée par défaut. Voici quatre règles :
$flag = ARRAY_FILTER_USE_KEY$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4); $newArr = array_filter($arr, function($key) { return $key == 'a' || $key == 'c'; }, ARRAY_FILTER_USE_KEY); print_r($newArr); //输出:Array ( [a] => 1 [c] => 3 )
Dans l'exemple ci-dessus, le paramètre $flag est défini sur ARRAY_FILTER_USE_KEY, ce qui signifie que seul le nom de la clé est utilisé pour le filtrage et le filtrage. La fonction de rappel peut conserver les éléments portant les noms de clé « a » et « c » et renvoyer un nouveau tableau.
$flag = ARRAY_FILTER_USE_BOTH$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4); $newArr = array_filter($arr, function($key, $value) { return $key == 'a' && $value == 1; }, ARRAY_FILTER_USE_BOTH); print_r($newArr); //输出:Array ( [a] => 1 )
Dans l'exemple ci-dessus, le paramètre $flag est défini sur ARRAY_FILTER_USE_BOTH, ce qui signifie que les noms de clé et les valeurs de clé sont utilisés pour le filtrage et le filtrage. La fonction de rappel peut conserver l'élément avec le nom de clé "a" et la valeur de clé 1, et renvoyer un nouveau tableau.
$flag = ARRAY_FILTER_USE_VALUE$arr = array(1, 2, 3, 4, 5); $newArr = array_filter($arr, function($value) { return $value % 2 == 0; }, ARRAY_FILTER_USE_VALUE); print_r($newArr); //输出:Array ( [1] => 2 [3] => 4 )
Dans l'exemple ci-dessus, le paramètre $flag est défini sur ARRAY_FILTER_USE_VALUE, ce qui signifie que seules les valeurs clés sont utilisées pour le filtrage et le filtrage. La fonction de rappel peut conserver les éléments pairs et renvoyer un nouveau tableau.
$flag = 0$arr = array(1, 2, 3, 4, 5); $newArr = array_filter($arr, function($value) { return $value > 2; }); print_r($newArr); //输出:Array ( [2] => 3 [3] => 4 [4] => 5 )
Dans l'exemple ci-dessus, le paramètre $flag n'est pas défini, ce qui signifie que les valeurs clés sont utilisées pour le filtrage et le filtrage par défaut. La fonction de rappel peut conserver les éléments supérieurs à 2 et renvoyer un nouveau tableau.
5. Résumé
La fonction array_filter() est une fonction de tableau très courante et pratique en PHP, qui peut être utilisée pour filtrer et filtrer des tableaux. Cet article fournit une introduction détaillée et une démonstration de l'utilisation de base et de l'explication des paramètres de cette fonction. J'espère qu'en étudiant cet article, vous maîtriserez les principes de base et l'utilisation de cette fonction et pourrez l'utiliser de manière flexible dans la programmation 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!