sql >> Database teknologi >  >> RDS >> Mysql

Undgå array-overskrivning og opret i stedet nyt array-indeks

Dataene i arrayet overskrives, fordi du gentildeler værdien af ​​$key hver gang den stødes på.

Det du vil gøre er at oprette et sekundært array som $key værdi og skub noder ind i det array, på denne måde ender du med dit forventede resultat.

[
    'NM1' => ['...', '...'],
    'PR1' => ['...', '...']
]

Koden ville være,

while (($row = fgetcsv($handle, 1000, ";", "\"", "\n")) !== FALSE) {
    $key = array_shift($row);
    // Notice the extra []
    $data[$key][] = $row;
}

Hver nøgle vil nu indeholde et array med en node for hver række, der stødes på.



  1. tildele mysql-værdi til variabel inline

  2. Sådan skjuler du MySQL Connection String- Brugernavn og adgangskode på GitHub (Java)

  3. PHP SQL få SELECT COUNT(bruger) til variabel

  4. Hvordan forbinder man Android med PHP og MySQL?