Bonjour a tous je suis débutant en php et j'ai besoin d'aide SVP .
j'ai une structure de données comme suite:
et je cherche a vérifier pour chaque ["name"] si il existe dans depends lui affecter le nom associé a ["depends"] pour avoir une structure comme suite:
Code : 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
21
22
23
24
25
26
27
28
29 array [0] => array(3){ ["type"]=>"fruits" ["name"]=>"banane" ["depends"]=>array(3){ [0]=>"fraise" [1]=>"kiwi" [2]=>"pomme" } } [1] => array(3){ ["type"]=>"fruits" ["name"]=>"ananas" ["depends"]=>array(3){ [0]=>"avocat" [1]=>"kiwi" [2]=>"banane" } } [2] => array(3){ ["type"]=>"fruits" ["name"]=>"kiwi" ["depends"]=>array(3){ [0]=>"ananas" [1]=>"avocat" [2]=>"banane" } } ...
Mon code actuellement est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 array { ["banane"] =>array{ [0]=>"ananas" =>array{ [0]=>"kiwi" } [1]=>"kiwi" =>array{ [0]=>"banane" [1]=>"ananas" } } ["ananas"] =>array{ [0]=>"kiwi" } }
Code : 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 <?php $json = file_get_contents("data/data.json"); $data = json_decode($json, true); //create my liste of fruits $fruits_liste = array_column($data, 'name'); $parcours = array(); foreach ($fruits_liste as $indice => $fruits_name) { foreach ($data as $key => $value) { if (in_array($fruits_name, $value['depends'])) { $parcours[$fruits_name] = $value['name']; } } } echo '<pre>'; var_dump($parcours); echo '</pre>';
Partager