无法json_encode PDO结果



我无法json_encode从PDO返回的数组:

var_dump(json_encode($result));返回false

我还将此数组重新分配给一个新数组,循环访问 PDO 结果。

这是我的代码:

$host = "localhost";
$database = "test";
$username = "root";
$password = "";
$db = new PDO("mysql:host={$host};port:3306;dbname={$database}", $username, $password);
!$db && exit("Database connect failed");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$statement = $db->prepare("SELECT sample.* FROM test.sample LIMIT 10");
$statement->execute();
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
var_dump(json_encode($result));

我发现了同样的问题,发现$result本身是错误/错误的。您应该检查$result的内容,使用

print_r($result);

如果是这样(仍然是假的),你应该你的数据库连接或你的语法查询。

最新更新