Je veux construire un tableau avec des paires clé-valeur de requête MySqli. Ce que j'ai tellement loin entrées écrase du tableau:MySQLi obtient des résultats et crée un tableau de valeur clé
$array = array();
while($row = mysqli_fetch_array($result))
{
$difference = abs($base - $row["sql_number"]);
$array = [$difference => $row["sql_number"]];
$bar = each($array);
print_r($bar);
}
echo count($array);
ksort($array);
echo count($array);
foreach ($array as $key => $value) {
echo "Key: ".$key;
echo "Value: ". $value;
}
print_r($bar);
imprime les paires clé-valeur correcte, mais je suis convaincu qu'il est parce qu'il imprime seulement la dernière entrée de la mysqli_fetch_array($result)
et les entrées précédentes sont overwriten. Je veux créer un tel tableau puis le trier avec ksort
par la valeur de clé.
vous fait Si tel est votre code réel une faute de frappe ici 'foreach (arrayas' $ qui devrait se lire comme' foreach ($ de as' tableau, les rapports d'erreur aurait jeté une Arrayas variable indéfinie Si vous utilisez 'foreach ($ array as', veuillez corriger votre question.) –
Puisque vous ne voulez pas surcharger la valeur, essayez' $ array [] = [$ difference => $ row ["sql_number"] ] Ceci évitera que la même 'différence' ne soit surchargée, mais notez que dans le' foreach' suivant, 'value' sera un' array' .Pouvez-vous publier la structure désirée du tableau final? – FirstOne
@Fred -ii- fixe.Merci! – Lenny