Mysql
 sql >> Base de données >  >> RDS >> Mysql

Php pdo foreach

Vous écrasez le tableau à l'intérieur du foreach à chaque itération. Cela signifie essentiellement que le tableau est vidé à chaque itération. Le tableau ne contiendra que les valeurs de la dernière itération. Déplacez le $temp = array(); déclaration en dehors de la boucle pour résoudre ce problème :

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

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

Le correctif ci-dessus fera fonctionner votre code, mais je recommande d'utiliser l'approche utilisant des alias SQL comme indiqué dans @YourCommonSense la réponse de dessous.