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

Php pdo foreach

Stai sovrascrivendo l'array all'interno di foreach su ogni iterazione. Ciò significa essenzialmente che l'array viene svuotato ad ogni iterazione. L'array conterrà solo i valori dell'ultima iterazione. Sposta il $temp = array(); dichiarazione al di fuori del ciclo per risolvere questo problema:

$temp = array(); // intialize the array

foreach($result as $r) {
    $temp[] = array(
        'id' => (int) $r['id_tabele'], 
        'ime_prezime' => (string) $r['naziv']
    ); 
}

La correzione di cui sopra farà funzionare il tuo codice, ma ti consiglio di utilizzare l'approccio utilizzando alias SQL come mostrato in @YourCommonSense risposta di sotto.