Setzen Sie PDO::ATTR_EMULATE_PREPARES
auf false, wenn Sie es wirklich mit locker typisiertem PHP benötigen
Wenn mysql_fetch_row
gibt Ihnen entweder int für SUM zurück (ich wollte das nie überprüfen) - dann macht es etwas Magie wie if (ctype_digit($val)) $row[$key] = (int)$val;
- so können Sie es in Ihrem DBAL tun
Soweit ich die Funktionsweise von vorbereiteten Anweisungen verstehe, verwendet sie dieselbe Paketstruktur für das Senden und Abrufen von Daten, und dieses Paket enthält den Datentyp.
Es sieht so aus, als ob der Server Daten in zwei Formaten zurückgeben kann - nativ und mysqlnd, abhängig vom Anfragetyp. Letzteres kann von der Client-Bibliothek interpretiert werden, um den resultierenden Wert umzuwandeln.