Bonjour à tous,

Je sollicite votre aide pour résoudre un problème (qui me paraissait facile au 1er abord) que j'ai pour modifier une clé dans un tableau multidimensionnel.
Après avoir récupéré une feuille Excel que j'ai transformé en tableau php, j'obtiens la structure suivante:
Nom : Image2.png
Affichages : 177
Taille : 130,4 Ko

J'aimerai changer le nom de cette clé en "NewObjects", j'ai alors créé cette fonction qui me paraissait logique par rapport à mon objectif:

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
function rename_associative_array_key(array $assiociativeArray, string $oldKey, string $newKey): array
{
         $newAssociativeArray = array();
     foreach ($assiociativeArray as $key1 => $value1){
                 $newAssociativeArray[$key1] = $value1;
         foreach($value1 as $key2 => $value2){
                          if($value1[$key2] === $oldKey){
                                      $newAssociativeArray[$key2]=$newKey;
              } else {
                                   $newAssociativeArray[$key2]=$value2;
              }
          }
     }
         return $newAssociativeArray;
}
 
$newArray = rename_associative_array_key($data1, "Objects", "NewObjects");
var_dump($newArray);
Malheureusement j'obtiens le résultat suivant:
Nom : Image3.png
Affichages : 148
Taille : 188,8 Ko

J'ai essayer d'autres façon comme récupérer les clés dans un tableau avec array_key() (pour en faire des valeurs que je pouvais changer plus facilement) et les valeurs dans un autre tableau avec array_values(), pour ensuite refaire un tableau avec array_combine() mais cette solution ne fonction pas non plus.

Est-ce que vous auriez une piste à me suggérer?