【发布时间】:2019-04-12 07:49:55
【问题描述】:
当我从 SQLite3 数据库中检索一行时,使用关联索引和数字索引的默认 fetch() 模式,数字索引有效,但如果我尝试使用关联索引,我会得到“未定义的索引”。也就是说,
$timeReadBack = $resultArray2[0];
给出正确的结果,但是
$timeReadBack = $resultArray2['startTime'];
给出“未定义的索引”。
我是积极的我的字段名称是正确的。
这是整个序列:
$result2 = $db->prepare( 'SELECT parameterValue FROM CurrentState WHERE parameterName = ?;' );
$result2->bindValue(1,'startTime');
$selectStatement = $result2->execute();
$resultArray2 = $result2->fetch();
$timeReadBack = $resultArray2[0];
parameterName 和 parameterValue 是表中的 TEXT 字段。
【问题讨论】:
-
调试提示添加
var_dump($resultArray2)并查看该数组中的确切内容! -
如果您向我们展示填充
$resultArray2的查询也会有所帮助,这样我们就不必与您一起玩 20 个问题来获取所有相关信息。见Minimal, Complete and Verifiable Example和the perfect question和Question Check list -
更不用说你用来获取结果的代码了。
-
使用默认 fetch() 默认为
PDO::FETCH_BOTH。字段名称区分大小写。如果startTime是选择字段的一部分,还要检查 SQL 查询。 -
代码添加到问题