Php 检查空白数组时有什么问题?

Php 检查空白数组时有什么问题?,php,mysql,sql,arrays,Php,Mysql,Sql,Arrays,我有如下疑问: $sql = "SELECT * FROM member_details WHERE blood_group = 'O+'"; 如果我在phpmyadmin中执行这个查询,那么我将得到零行。 但当我回显阵列时,我会像下面这样 $n = new data(); $res = $n -> querySend($sql); $abc = mysql_fetch_array($res); //if i do like this echo $res; // outp

我有如下疑问:

$sql = "SELECT * FROM member_details WHERE blood_group = 'O+'";
如果我在phpmyadmin中执行这个查询,那么我将得到零行。 但当我回显阵列时,我会像下面这样

$n = new data();

$res = $n -> querySend($sql);

$abc = mysql_fetch_array($res); 

//if i do like this
   echo $res;  // output getting as Resource id#6

//if i do like this then
   echo count($abc); // output getting as 1

//if i do like this then
   print_r($abc); die; // output getting as blank
我想检查
$abc
是否为空。 但由于上述输出,我无法检查它。 谁能告诉我这个有什么问题吗。 提前感谢。

您可以使用

 if(empty($abc))
你可以检查一下,比如:

顺便说一句,你应该这样做

if( mysql_num_rows($res) > 0 ) {
    $abc = mysql_fetch_array($res);    
}

我建议从mysql_*切换到mysqli_*或PDO,mysql_*已被弃用,在未来的php版本中无法使用

在这种情况下,您可以做的是在获取数组之前检查结果的行数:

(我知道,mysql_*函数,但页面上有警告!)。

旁注:停止使用不推荐的
mysql_*函数。如果我喜欢,请使用或。
?这不是一个有效的语法。是的。看见
if( mysql_num_rows($res) > 0 ) {
    $abc = mysql_fetch_array($res);    
}