Hay cierto artículo extremadamente dañino en Internet que dice que necesita cualquier clase de TableRows para trabajar con PDO. Lo cual es extremadamente basura.
En realidad no necesitas nada como esto. Simplemente use un foreach normal
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->query("SELECT * FROM users");
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
En este punto, tiene una matriz de PHP convencional que se puede iterar como cualquier otra matriz usando foreach
o codificado usando json_encode
o usado de otra manera
// iterate over rows
foreach($data as $row) {
// iterate over values in each row
foreach($row as $v) {
echo $v, " ";
}
echo "<br>"\n;
}