2016-08-02 6 views
0

array_filter übergibt nur Array-Werte, nicht Schlüsselnamen ... wie auf Schlüsselname zugreifen? zum Beispiel:pass keyname in array_filter

$array= array('country'=>'Spain'); 
array_filter($array,'my_func'); 

mit my_func Ich möchte überprüfen:

if KEYNAME == 'country' then ...

+0

@ Patrick-Q und @ Rizier123 die Frage lesen, bevor sie als DUPLICATE Markierung! In diesem Thema gibt es keine Antwort auf meine Frage! –

+0

Eigentlich ist die angenommene Antwort in der verknüpften Frage die gleiche Lösung wie das, was Sie hier akzeptiert haben, aber tatsächlich mit einer _more_precise_ Flag bestanden. Vielleicht lesen und verstehen Sie also die Antworten, bevor Sie den Griff loslassen. –

+0

@PatrickQ danke. Du bist teilweise richtig. Ich bin nicht von meinem Griff geflogen, keine Sorge. nur diese Antwort war ein bisschen schwierig für mich, direkt zu verstehen. Bevor Sie jedoch das Thema abschließen, verstehen Sie bitte, dass ich, wenn ich diese Antwort bekommen hätte, nicht gefragt hätte. Wenn der Benutzer also eine Frage stellt, dann hilf ihm, wenn du kannst. wenn nicht, dann gib wenigstens einen Hinweis. schau auf die akzeptierte antwort, das war was ich gesucht habe. –

Antwort

2

array_filter können sie passieren.

array_filter($array, 'my_func', ARRAY_FILTER_USE_BOTH);

und my_func wird dann zwei params übergeben werden; der Schlüssel und der Wert.

array_filter doc page