我有一个像这样创建的对象:
$conn=new Classes_dbFactory("MySQLi", DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
然后我构建了一个结果集对象:
$res=$conn->getResultSet("MySQLi", $sql);
如果我var_dump
$res
我得到:
object(Classes_MysqlImprovedResult)#3 (4) { ["_current:protected"]=>
NULL ["_key:protected"]=> NULL ["_valid:protected"]=> NULL
["_result:protected"]=> object(mysqli_result)#4 (0) { } }
我不知道如何导航这两个对象。
我知道mysqli_result对象包含来自db的X行数据。我可以使用foreach
执行limitIterator
循环来获取所有值,这可以正常工作。
但是,我只想从结果集的第一行获取一个值,所以使用foreach似乎有点OTT。
换句话说,我想与对象做相同的操作,但我没有使用对象或mysqli的经验:
$res=mysql_result($sql);
$row=mysql_fetch_assoc($res);
echo $row['foo'];
提前致谢。
答案 0 :(得分:1)
所以使用mysqli_result的'fetch_array'方法:
$row = $result->fetch_array(MYSQLI_ASSOC);
echo $row['foo'];
答案 1 :(得分:0)
我不知道你正在使用什么数据库包装器,但我发现a similar post有一个Google搜索,看起来你必须做这样的事情:
$res = $conn->getResultSet("MySQLi", $sql);
$res->next();
$row = $res->current();
echo $row['foo'];