Trick Jarrett Trick Jarrett - 6 months ago 35
PHP Question

JSON encode MySQL results

How do I use the

json_encode()
function with MySQL query results? Do I need to iterate through the rows or can I just apply it to the entire results object?

Answer
$sth = mysqli_query("SELECT ...");
$rows = array();
while($r = mysqli_fetch_assoc($sth)) {
    $rows[] = $r;
}
print json_encode($rows);

The function json_encode needs PHP >= 5.2 and the php-json package - as mentioned here

NOTE: mysql is deprecated as of PHP 5.5.0, use mysqli extension instead http://php.net/manual/en/migration55.deprecated.php.

Comments