Bonjour,

Probleme avec ma function utilisée pour parcourir un json decode :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
$jsonFile = file_get_content('json.json');
$json = json_decode($jsonFile);
$find=KeySearch($json, 'bonjourajax');
 
echo $find;
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
// function permettant de trouver la valeur d'une key dans un json decode parexemple, 
// seulement si cette key est unique dans l'objet
 
function KeySearch($json, string $search)
{
	    foreach ($json as $key=>$val) {
 
                 // si c'est un array ou objet (stdclass) alors on parcoure l'objet
	        if(is_array($val) || is_object($val)) {
	            KeySearch($val, $search);
	        }
 
	        else if($key == $search) {
 
			return $val;
                               break;
		}
	    }
	}

La function ne marche que si je remplace return $val; par un echo $val; sinon elle ne retourne rien (pourquoi)
Vous auriez une idée