Indstil PDO::ATTR_EMULATE_PREPARES
til falsk, hvis du virkelig har brug for det med løst skrevet PHP
Hvis mysql_fetch_row
returnerer dig int for SUM enten (jeg gad aldrig tjekke) - så gør det noget magi som if (ctype_digit($val)) $row[$key] = (int)$val;
- så du kan gøre i din DBAL
Så vidt jeg forstår, hvordan forberedte erklæringer fungerer, bruger den den samme pakkestruktur til enten at sende og hente data, og denne pakke indeholder datatype.
Det ser ud til, at serveren kan returnere data i 2 formater - native og mysqlnd, afhænger af anmodningstypen. En sidstnævnte kan tolkes af klientbiblioteket til at give den resulterende værdi.