2017-10-12 10 views
0

Ich verwende den folgenden Code, um die Zeichenfolge im Array zu suchen und den entsprechenden Antwortcode zu drucken. Aber unter Code immer Approved1 in allen Fällen drucken (d 000,00,0)Exakte Position des Elements im Array

$resp_desc=["Approved1","Approved","Fail"]; 
$resp_table=["000","00","0"]; 
$description=array_search("0",array_keys($resp_table)); 
$desc1=$resp_desc[$description]; 
echo $desc1; 

Bitte führen in über Materie.

+1

warum sind Sie in der array_keys und nicht die Werte der Suche? – madalinivascu

+1

Es ist nicht völlig klar, aber Sie wollen wahrscheinlich auch den dritten Parameter als 'true' an' array_search' übergeben. Andernfalls werden alle diese Werte als gleich betrachtet, da es einen losen Vergleich ergibt. – iainn

Antwort

3

Sie sind in dem Array-Schlüssel nicht auf der Suche die Werte des Arrays, auf true gesetzt ist in der array_search beschränken, so dass Sie nur ein Ergebnis

haben
$description=array_search("0",$resp_table,true); 
+1

Beachten Sie, dass auch das dritte Argument 'exact' wichtig ist, da' array_search ("0", $ resp_table); 'auch' 0' zurückgibt. – OptimusCrime

Verwandte Themen