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:

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"  
                      }
                } 
  ...
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
array {
    ["banane"] =>array{
                  [0]=>"ananas" =>array{
                                        [0]=>"kiwi" 
                                        } 
                  [1]=>"kiwi" =>array{
                                      [0]=>"banane"
                                      [1]=>"ananas"
                                      }
    } 
 
    ["ananas"] =>array{
                  [0]=>"kiwi"  
    }         
}
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
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>';