2010-01-03 5 views
0

J'essaie de trouver le numéro de clé dans un tableau correspondant à une chaîne.Comment rechercher une clé de tableau en faisant correspondre une chaîne dans sa valeur

J'ai essayé array_search de cette façon

$key = array_search("foo", $array); 
echo $array[$key]; 

mais imprime $ array [0]

Y at-il une autre façon de le faire?

Merci :)

+0

Vous cherchez une valeur * exactement * correspond à votre chaîne de recherche? Ou votre chaîne de recherche peut-elle être une sous-chaîne de la valeur que vous recherchez? Un exemple de tableau à associer à votre exemple de recherche serait utile. –

Répondre

2

Si la clé est introuvable, array_search renvoie false. Vous devez vérifier que (ligne 3 dans mon exemple ci-dessous)

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); 
$key = array_search("green", $array); //the $key will be "2" 
if ($key !== false) { 
    echo $array[$key]; 
} 

Sinon, votre code semble faire ce que vous avez besoin. S'il y a un problème, s'il vous plaît, postez plus de code.

0

Je ne suis pas exactement la même chaîne, une seule partie, array_search fonctionnera-t-elle toujours?

btw i fait une boucle à travers le tableau avec pour chaque qui un preg_match jusqu'à ce qu'il trouve la chaîne casse alors la boucle et stocker la clé dans un tableau

Questions connexes