Bei der PHP -Programmierung ist die Verarbeitung von Arrays eine häufige Aufgabe. Wir können auf die Notwendigkeit stoßen, Elemente herauszufiltern, die bestimmte Kriterien aus einem großen Array erfüllen. IS_Array und Array_filter sind zwei sehr nützliche PHP -Funktionen, mit denen wir Array -Daten effizient filtern. In diesem Artikel werden wir untersuchen, wie diese beiden Funktionen kombiniert werden, um Arrays effizient zu filtern.
IS_Array ist eine Funktion, mit der es verwendet wird, ob eine Variable ein Array ist. Wenn es sich bei der Variablen um ein Array handelt, gibt IS_Array wahr zurück, ansonsten falsch .
Grammatik:
bool is_array ( mixed $var )
Array_Filter ist eine Funktion, mit der Elemente in einem Array filtern, das die Kriterien erfüllt. Es testet jedes Element im Array basierend auf der angegebenen Rückruffunktion und gibt ein neues Array von Elementen zurück, die den Kriterien entsprechen.
Grammatik:
array array_filter ( array $array , callable $callback = NULL )
Wenn keine Rückruffunktion bereitgestellt wird, beseitigt Array_filter die Elemente standardmäßig im Array mit einem Wert von FALSE im Array.
In der tatsächlichen Entwicklung müssen wir häufig zuerst bestätigen, ob es sich bei der Bearbeitung eines Arrays um ein gültiges Array handelt, und dann die Elemente im Array basierend auf bestimmten Bedingungen herausfiltern. Mit der Kombination von IS_Array und Array_filter können einige unnötige Fehler und Optimierungsfiltervorgänge effektiv vermieden werden.
Angenommen, wir haben ein Array, das alle Zahlen mehr als 10 herausfiltern muss. Zuerst möchten wir überprüfen, ob dieses Array gültig ist, und dann mit Array_filter filtern.
Codebeispiel:
<?php
$data = [1, 5, 12, 18, 3, 7, 20];
if (is_array($data)) {
$filtered_data = array_filter($data, function($value) {
return $value > 10;
});
print_r($filtered_data);
} else {
echo "Die Daten sind kein gültiges Array";
}
?>
In diesem Beispiel verwenden wir zuerst IS_Array , um zu überprüfen, ob $ Data ein gültiges Array ist. Wenn es sich um ein Array handelt, verwenden wir dann Array_filter , um alle Zahlen mehr als 10 herauszufiltern und die Filterergebnisse auszudrucken.
Array
(
[2] => 12
[3] => 18
[6] => 20
)
Manchmal müssen wir mit der URL im Array filtern. Angenommen, wir haben ein Array mit mehreren URL -Adressen und müssen alle URLs mit gitbox.net als Domänennamen herausfiltern. Zu diesem Zeitpunkt können wir IS_Array und Array_filter kombinieren, um eine effektive Filterung durchzuführen.
Codebeispiel:
<?php
$urls = [
"https://gitbox.net/user/repo",
"https://example.com/test",
"http://gitbox.net/another/repo",
"https://gitbox.net/sample"
];
if (is_array($urls)) {
$filtered_urls = array_filter($urls, function($url) {
return strpos($url, 'gitbox.net') !== false;
});
print_r($filtered_urls);
} else {
echo "Die Daten sind kein gültiges Array";
}
?>
In diesem Beispiel prüfen wir zunächst, ob $ URLS ein Array ist, und verwenden dann Array_Filter in Kombination mit Strpos , um alle URL -Adressen mit Gitbox.net -Domain -Namen herauszufiltern.
Array
(
[0] => https://gitbox.net/user/repo
[2] => http://gitbox.net/another/repo
[3] => https://gitbox.net/sample
)
Durch die Kombination von IS_Array und Array_Filter können wir sicherstellen, dass wir bei der Verarbeitung von Arrays nicht nur die Gültigkeit der Daten überprüfen, sondern auch die Daten flexibel herausfiltern, die wir anhand verschiedener Bedingungen benötigen. Diese Methode ist sehr geeignet, um komplexe Datenfilterungsaufgaben in der Entwicklung zu behandeln, was Fehler effektiv vermeiden und die Code -Wartbarkeit verbessern kann.
IS_Array sorgt für die Gültigkeit des Arrays.
Array_filter kann Arrays basierend auf Rückruffunktionen filtern.
Diese Methode ist sehr prägnant und effizient und für verschiedene Array -Filtervorgänge geeignet.
Verwandte Tags:
array_filter