Bonjour à tous,

en fait, j'ai l'intention d'utiliser les tableaux associatifs. Au niveau de mon tableau, je compte utiliser 2 informations au niveau de ma clé. Pour cela, je me demandais si c'était une bonne idée de mettre un autre tableau associatif de la clé de ce premier tableau associatif ? Je pense que ça ne doit pas être la meilleure solution car ça peut devenir ingérable.

Voici une partie de mon code pour vous montrer ce que je compte faire :

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
$arrActionsByUser = array();
$arrActionsByUserWithIndex = array();
 
foreach ($items as $key => $value)
{
  if (in_array($value['ACTION_TITLE'], array_keys($arrActionsByUser)))
  {                             
    $arrActionsByUserWithIndex[$value['ACTION_DESCRIPTION']] += $value['INDEX'];
  }
  else
  {
    $arrActionsByUserWithIndex[$value['ACTION_DESCRIPTION']] = $value['INDEX'];
  }
 
  $arrActionsByUser[$value['ACTION_TITLE']] = $arrActonsByUserWithIndex[$value['ACTION_DESCRIPTION']];
}
N'y a-t-il pas un moyen plus simple que de mettre un tableau associatif dans un autre ? Utilisation de listes, de classes, ... ?

En fait, je me demande également comment je peux faire pour accéder à la clé de mon tableau associatif qui s'appelle : $arrActionsByUserWithIndex. J'arrive bien à accéder à la valeur de ce tableau mais pas à sa clé. J'aimerais bien pour accéder à sa clé notamment via un foreach :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
foreach($arrActionsByUser as $actionsByUserKey => $actionsByUserValue)
{
  echo "key {" . $actionsByUserKey . "} value {" . $actionsByUserValue . "}<br/>";
}
Donc, plutôt que d'utiliser un tableau associatif comme valeur de mon 1er tableau associatif, il faudrait peut-être que j'utilise un autre type de données comme une classe ou autre chose ?

En fait, quand j'ai construit mon tableau associatif, j'aimerais bien accéder à la clé de mon 1er tableau associatif et à la clé ainsi qu'à la valeur de mon 2ème tableau associatif.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
foreach($arrActionsByUser as $actionsByUserKey => $actionsByUserValue)
{
  if ($actionsByUserValue > 0)
  {
     <a href="article.php?action=<?= $actionsByUserKey; ?>"><?= $actionsByUserValue; ?></a>
  }
}
Dans le lien, à la place d'afficher $actionsByUserValue, j'aurais bien aimé afficher la clé de cet élément-là c'est-à-dire la clé de ma second tableau associatif.

N'y a-t-il pas moyen d'accéder à la key/value au niveau du foreach sur le 1er tableau associatif :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
foreach($arrActionsByUser as $actionsByUserKey => $actionsByUserValue)
{
  echo "key {" . $permissionsByUserKey . "} value {" . $permissionsByUserValue . "}<br/>";
}
Avoir un truc du genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
foreach($arrActionsByUser as $actionsByUserKey => key_2nd_array, value_2nd_array)
Merci d'avance

Bonne journée
Thierry