Php 如果没有返回记录,则json_编码和解析信息

Php 如果没有返回记录,则json_编码和解析信息,php,ajax,json,Php,Ajax,Json,我制作了一些AJAX(PHP+JQuery),但我有一个问题。 我有: 数据类型:“json” 在Javascript中 当json_编码从数据库返回一些记录时,一切正常。 问题是怎么做,在没有任何记录的情况下如何说服务器 当我有一个编码为JSON的数组时,这是可以的。 当数组为空时,json_enocde返回NULL。 但这不是预期的格式,因此我无法捕获此错误 希望,问题很清楚:)这里有两种可能性: PHP选项: 处理空对象以使其可提前解析 if ($mydata==NULL) { $

我制作了一些AJAX(PHP+JQuery),但我有一个问题。 我有: 数据类型:“json”

在Javascript中

当json_编码从数据库返回一些记录时,一切正常。 问题是怎么做,在没有任何记录的情况下如何说服务器

当我有一个编码为JSON的数组时,这是可以的。 当数组为空时,json_enocde返回NULL。 但这不是预期的格式,因此我无法捕获此错误

希望,问题很清楚:)

这里有两种可能性:

PHP选项:

处理空对象以使其可提前解析

if ($mydata==NULL) {
    $mydata = new stdClass();
}
echo json_decode($mydata);
JS选项:

在客户端解析错误时,请尝试捕获错误

// Catch the error
try {
    var data = JSON.parse(json);
} catch(error) {
    // Handle the error
}

为什么不假设如果返回空值,就会发生另一个操作呢?意思是,你为什么不处理这个案子呢?如果(空($response)){echo json_encode(['error'=>true'])呢?非常感谢你,这对我帮助很大!