微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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) ...

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐