sql >> Databasteknik >  >> RDS >> Mysql

Generera PHP-array från MySQL med nyckelvärde från id-kolumnen

Detta är genomförbart som en associativ array.

Allt du behöver göra är att ändra

$array[] = $row

till

$array[$row['ID']] = $row

Du måste se till att ID kolumnen i din databas är unik så att den associativa arrayen inte skriver över nycklar (i vilket fall endast den sista posten med dubbletter av ID:n skulle finnas kvar)

REDIGERA (2015-11-19)

Även om din 'mysql loop' - det är bara en vanlig PHP while slinga som går igenom poster som ges av antingen mysql_* eller mysqli_* funktioner. Du går igenom det returnerade resultatet från att köra en SQL-sats på databasen som bara hämtar och formaterar rader åt dig på ett visst sätt.

MySQL och MySQLi är två olika saker men SQL de använder är inte annorlunda (förutom kanske förberedda satser?). Att lära sig SQL är vad du ska göra och för att köra det kommer du att använda mysqli_* från och med nu sedan mysql_* funktioner är utfasade

Jag ville bara påpeka dessa saker för att rensa ut viss förvirring som du kanske redan har eller kommer att ha i framtiden. :)

För mer läsning om mysqli läs php.net manualen , det hela är lite komplicerat om du precis har börjat, men det är bra - förstå vad du kan och arbeta för att förstå vad du inte kan.

EDIT 2 (2015-11-19)

indexen i din $row array är skiftlägeskänsliga alltså ID och id är något helt annat. en kommer att lägga till ett undefined index fel.

Jag märkte i din utdata att id nyckeln är faktiskt gemener så jag skulle försöka ändra till det.

Lycka till!



  1. mySQL subquery limit

  2. SSIS-handledning för nybörjare:Varför, vad och hur?

  3. Hur anger man nyradstecken i Oracle?

  4. Hur tar man bort alla referensrader automatiskt om överordnad rad tas bort i mysql?