php – 注意:未定义的偏移量:0 – 我的数组包含值

我有一点问题,我不明白.

我有这个代码

public function formAlreadySent($demande){
        $data = odbc_exec($this->dbConnection,"SELECT COUNT(*) FROM [@JDC_QSTR] WHERE U_Demande = ".$demande);
        $nombre = odbc_fetch_array($data);
        print_r($nombre);
        if($nombre[0] > 0)
            return true;
        else
            return false;
    }

我的print_r的结果是:

Array ( [0] => 0 )

但我得到了这个错误

Notice: Undefined offset: 0 in C:\wamp\www\enquetesatisfaction\libs\model\QuestionsManager.class.PHP on line 89

第89行是:

if($nombre[0] > 0)

如果有人知道为什么会出现此问题?

提前致谢 !

解决方法:

根据PHP文档,odbc_fetch_array获取结果行并将其作为关联数组返回,如果没有更多行则返回false.

作为关联数组,第一项的索引(COUNT(*))不应为[0].说实话,我不知道为什么显然是这样.

我建议这样做:首先将sql中的计数别名,例如

SELECT COUNT(*) AS rowcount ...

然后在获取结果后引用该别名.

if($nombre['rowcount'] > 0) ...

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...