Php Can';无法检测空结果

Php Can';无法检测空结果,php,Php,根据是否找到任何结果,我希望将值设置为$case\u num,并将其存储在数组中,以便使用json传回AJAX调用。如果找到一个条目,我正在使用的代码可以正常工作,但是如果没有结果,那么传递回来的值就是null $sql = "SELECT * FROM cases WHERE name LIKE '%$serial%' AND DATE(date_entered) = CURDATE()"; $result_case = mysqli_query($mysqli,$sql)

根据是否找到任何结果,我希望将值设置为
$case\u num
,并将其存储在数组中,以便使用
json
传回
AJAX
调用。如果找到一个条目,我正在使用的代码可以正常工作,但是如果没有结果,那么传递回来的值就是null

$sql = "SELECT * FROM cases WHERE name LIKE '%$serial%' 
        AND DATE(date_entered) = CURDATE()";

$result_case = mysqli_query($mysqli,$sql) or die(mysqli_error($mysqli));
$row = mysqli_fetch_array($result_case);

 if(!empty($result_case)){
      $case_id = $row['id'];
      $case_num = $row['name'];
    }else{
      $case_num = 'not found';
 }

$output_array = array(
    'source' => $source,
    'case_found' => $case_num
);

echo json_encode($output_array);

如果条件,您应该更改您的

if($row)

请记住,
mysqli_fetch_array
将在没有行可提取的情况下返回
NULL
,并且
mysqli_query
将根据查询是否成功(如未生成错误)返回一个布尔值。

$result_case不为NULL,如果没有结果,则该值为false,您可以尝试使用like(isset($row))或$result_case=false

如果没有结果,您希望$case\u num是什么?
$result\u case
将永远不会为空,永远不会。
$row
将被设置。因此,
isset($row)
是一个无用的测试