php - 通知: Undefined offset: 0 - My array contains values

标签 php arrays odbc

我有一个小问题,我不明白。

我有这个代码:

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

关于php - 通知: Undefined offset: 0 - My array contains values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46075491/

相关文章:

数组上的 JavaScript Pop vs slice 方法

arrays - 在标签中显示 10 个整数的数组

nhibernate - 是否可以通过 odbc 连接使用(流畅)nhibernate?

c++ - 使用 Kerberos 身份验证模拟用户时建立 ODBC 连接

javascript - 管理页面在 orgfree 中不起作用 用户 'root' @'localhost' 的访问被拒绝?

php - Symfony2 : Same codebase with multiple environments leads to tons of cache files

php - 表达式引擎搜索 : Get exact match from channel field

php - 命名空间可以在 PHP 中以数字开头吗?

javascript - 使用对象 ID 的 jQuery 创建数组以在 Django 后端处理

c# - 在 C# 中更改系统小数分隔符?