php - print_r 返回所有 mysql 结果,但 json_encode 什么都不返回

标签 php mysql pdo

我想从数据库中返回一些信息。问题 在 MySQL 中执行查询时它工作正常,但是当我在 PHP 中运行相同的查询时,它不起作用。它只有在我将限制设置为小于 9 时才有效。任何 9 及以上的东西都会返回一个空白屏幕。我的表目前有 40 多行。

当我启动 print_r($results) 时。返回所有行,但使用 json_encode($results),它返回空白屏幕,并且仅在限制为 8 时返回。

ini_set("display_errors",1);
$Db = new PDO ( "mysql:host=127.0.0.1;dbname=recycle",'root','' );
$Db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$Query = $Db->prepare('SELECT * FROM recyclable');

$Query->execute();

$Results = $Query->fetchAll(PDO::FETCH_OBJ);

echo json_encode($Results); [error]
//print_r($Results) works.

我删除了数据库并再次尝试。仍然无法正常工作,甚至针对其他数据库表测试了相同的查询,但仍然无法正常工作。

我无法强调这让我多么沮丧。 我正在使用 XAMPP

1.8.3 [PHP: 5.5.3]

最佳答案

这可能是因为“内存不足”的问题.. 做一个

ini_set("display_errors",1)" 开头和 E_ALL 错误

关于php - print_r 返回所有 mysql 结果,但 json_encode 什么都不返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23076209/

相关文章:

php - 如何将mysql更改为mysqli?

php - 为什么我的 PDO 查询失败?

php - Concat逗号使用mysql分隔名字和姓氏

php - 如何向每个页面添加一个 MySQL 命令

mysql - 当 2 个不同的行满足我的要求时返回共享列值

php - PDO - 3D000 未选择数据库

php - 完整性约束违反PDO方法(创建查询)php

php - 保存来自 Laravel 的请求时 mysql 中缺少记录

php - JQuery 多部分/数据 ajax 发布

php - PDO/mySQL 如何绑定(bind)多个值来存储多行