J'ai des données, oui, des données. Ces données proviennent d'une requête MySQL et il contiendra toujours 4 éléments, toujours. Je veux mettre en cache ces données dans une table de tableau pour les utiliser ultérieurement dans une page Web, mais je souhaite conserver les clés de la requête et séparer chaque regroupement dans un tableau multidimensionnel. Cependant, pour gagner du temps à parcourir le tableau chaque fois que je veux trouver un groupe donné de données, je veux appeler les touches du premier tableau de la même façon que la clé ID qui est toujours la première clé dans chaque élément.Comment nommer une clé de tableau avec une clé dans le tableau
À la minute où je suis en utilisant ce code:
function mysql_fetch_full_result_array($result)
{
$table_result=array();
$r=0;
while($row = mysql_fetch_assoc($result)){
$arr_row=array();
$c=0;
while ($c < mysql_num_fields($result)) {
$col = mysql_fetch_field($result, $c);
$arr_row[$col -> name] = $row[$col -> name];
$c++;
}
$table_result[$r] = $arr_row;
$r++;
}
return $table_result;
}
Je teste actuellement ce en utilisant 3 utilisateurs uniques, donc je me fais trois lignes en retrait de la requête et les données de cette fin de fonction dans le format:
[0]=>
. . [id] => 1
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
[1]=>
. . [id] => 34
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
[2]=>
. . [id] => 56
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
Alors, comment puis-je modifier le code à la place des touches [0], [1], [2] me donner la sortie:
[1]=>
. . [id] => 1
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
[34]=>
. . [id] => 34
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
[56]=>
. . [id] => 56
. . [name] => random name
. . [tel] => random tel
. . [post] => post code data
Je ne me dérange pas si les touches de tableau principal sont des chaînes de chiffres plutôt que des chiffres, mais je suis coincé, j'ai essayé de changer la partie $table_result[$r] = $arr_row;
pour lire $table_result[$result['id']] = $arr_row;
mais cela produit juste un tableau d'une personne. Je sais que j'ai besoin d'une autre boucle mais j'ai du mal à trouver comment l'écrire.
Cela a fonctionné à merveille, à votre santé! – Confused