我在检查ADODB5
记录集的空虚时遇到了问题
$db = ADONewConnection($dbdriver);
$db->Connect($dbhost, $dbuser, $dbpass, $dbname);
$rs = $db->Execute($query);
现在,如果我尝试检查记录集
if(isset($rs[0]))
...
...
我收到错误Cannot use object of type ADORecordSet_mysqli as array
如何检查返回的记录集是否为空?
答案 0 :(得分:1)
在isset
评估之前,我将ADODB记录集转换为数组
$ra = $rs->getRows();
然后测试$ra
数组是否为空
if(empty($ra)){
...
...
}
答案 1 :(得分:1)
如果$db->Execute($query)
方法失败,则可能不会返回ADORecordSet对象。在确定$rs->getRows()
有效之前,我不会调用$rs
方法,因此,
if (is_subclass_of($rs, 'ADORecordSet') AND $rs->recordCount()) {
// I have rows
// ...
}