使用mysql_fetch_array,我可以轻松计算返回的行数.我可以用mysql_fetch_object做类似的事情吗?

Dav*_*den 7 php mysql oop mysql-num-rows

(如果有必要道歉 - 我的第一个Stack Overflow问题.如果有人有建议,我会很乐意修改它.我已经找到了答案,但我担心我对术语的掌握不够好,无法完成搜索.)

我习惯使用mysql_fetch_array从数据库中获取记录.当以这种方式获取记录时,mysql_num_rows给出了行数.但是,在我当前的项目中,我正在使用mysql_fetch_object.mysql_num_rows似乎不适用于此函数,当我对查询结果进行"计数"时,我得到了预期的答案:1(一个对象).

有没有办法'看到'对象并计算其中的元素?

ehu*_*kai 13

该函数mysql_num_rows适用于结果资源,而不是对象行.

$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);

$sql = "SELECT id, name FROM myTable";

$result = mysql_query($sql, $link);

$rowCount = mysql_num_rows($result);

while($row = mysql_fetch_object){
    echo "id: ".$row->id." name: ".$row->name."<BR>";
}
echo "total: ".$rowCount;
Run Code Online (Sandbox Code Playgroud)