2010-08-17 4 views
3

J'essaie de trouver l'index basé sur la valeur stockée en son sein.recherche d'index de tableau basé sur la valeur

Ce serait normalement facile, mais le tableau avec lequel je travaille est fortement imbriqué. Chaque index 0,1,2 a des champs f1,f2,f3. J'essaie de trouver quel index 0,1,2 a dans son champ f2 la valeur this stockée dedans. Dans ce cas, c'est l'index 0. Donc, c'est la sortie que je cherche. Y a-t-il un bon truc en PHP pour le faire efficacement?

$somearray[0][f1] = "not this"; 
$somearray[0][f2] = "this"; 
$somearray[0][f3] = "not this"; 

$somearray[1][f1] = "not this"; 
$somearray[1][f2] = "not this"; 
$somearray[1][f3] = "not this"; 

$somearray[2][f1] = "not this"; 
$somearray[2][f2] = "not this"; 
$somearray[2][f3] = "not this"; 

Répondre

3

Dans ce cas, son index 0. Alors que la sortie est je cherche.

$somearray[0]['f1'] = "not this"; 
$somearray[0]['f2'] = "this"; 
$somearray[0]['f3'] = "not this"; 

$somearray[1]['f1'] = "not this"; 
$somearray[1]['f2'] = "not this"; 
$somearray[1]['f3'] = "not this"; 

$somearray[2]['f1'] = "not this"; 
$somearray[2]['f2'] = "not this"; 
$somearray[2]['f3'] = "not this"; 

foreach($somearray as $key => $value) 
{ 
    if($value['f2'] === 'this') 
    { 
    echo $key; // find out the key 
    } 
} 

Sortie:

0 
+0

Merci. Fait ce que j'essayais de faire. – lok

+0

@lok: Vous êtes les bienvenus :) – Sarfraz

Questions connexes