Heim > Backend-Entwicklung > PHP-Tutorial > Wie filtere ich Array-Elemente basierend auf dem Schlüsselpräfix in PHP?

Wie filtere ich Array-Elemente basierend auf dem Schlüsselpräfix in PHP?

Linda Hamilton
Freigeben: 2024-10-28 11:42:02
Original
841 Leute haben es durchsucht

How to Filter Array Elements Based on Key Prefix in PHP?

Array-Elemente basierend auf Schlüsselpräfix filtern

Sie haben ein Array, das Elemente mit Schlüsseln mit unterschiedlichen Präfixen enthält, und Sie müssen nur diese isolieren mit Schlüsseln, die mit einer bestimmten Zeichenfolge beginnen, z. B. „foo-“.

Funktioneller Ansatz

Um nur die Elemente beizubehalten, deren Schlüssel mit „foo-“ beginnen, verwenden Sie a Für den funktionalen Ansatz in PHP verwenden Sie die PHP-Funktion array_filter() zusammen mit einer anonymen Funktion, um jeden Schlüssel zu überprüfen:

<code class="php">$array = array_filter($array, function($key) {
    return strpos($key, 'foo-') === 0;
}, ARRAY_FILTER_USE_KEY);</code>
Nach dem Login kopieren

Diese Funktion durchläuft das $array und gibt ein neues Array zurück, das nur die Elemente enthält, deren Schlüssel die Anforderungen erfüllen Bedingung, dass mit „foo-“ begonnen wird.

Prozeduraler Ansatz

Für einen prozeduralen Ansatz können Sie eine foreach-Schleife verwenden, um das $-Array zu durchlaufen und das Array manuell auszuwählen gewünschte Elemente:

<code class="php">$only_foo = array();
foreach ($array as $key => $value) {
    if (strpos($key, 'foo-') === 0) {
        $only_foo[$key] = $value;
    }
}</code>
Nach dem Login kopieren

In diesem Fall wird das Array $only_foo manuell mit den Elementen gefüllt, die das Schlüsselpräfixkriterium erfüllen.

Prozeduraler Ansatz mit Objekten

Mithilfe von OOP können Sie die ArrayIterator-Klasse verwenden, um über das $array zu iterieren und die gewünschten Elemente zu filtern:

<code class="php">$i = new ArrayIterator($array);
$only_foo = array();
while ($i->valid()) {
    if (strpos($i->key(), 'foo-') === 0) {
        $only_foo[$i->key()] = $i->current();
    }
    $i->next();
}</code>
Nach dem Login kopieren

Dieses Mal bietet der ArrayIterator die Möglichkeit, Arrays mithilfe objektorientierter Konstrukte zu verarbeiten .

Das obige ist der detaillierte Inhalt vonWie filtere ich Array-Elemente basierend auf dem Schlüsselpräfix in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage