Du skriver över arrayen inuti foreach
vid varje iteration. Detta betyder i huvudsak att arrayen töms vid varje iteration. Arrayen kommer bara att innehålla värdena från den senaste iterationen. Flytta $temp = array();
deklaration utanför loopen för att fixa detta:
$temp = array(); // intialize the array
foreach($result as $r) {
$temp[] = array(
'id' => (int) $r['id_tabele'],
'ime_prezime' => (string) $r['naziv']
);
}
Ovanstående fix kommer att få din kod att fungera, men jag rekommenderar att du använder metoden med SQL-alias som visas i @YourCommonSense s svar Nedan.