Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用mysql_fetch_数组,我可以轻松计算返回的行数。我可以对mysql\u fetch\u对象执行类似的操作吗?_Php_Mysql_Oop_Mysql Num Rows - Fatal编程技术网

Php 使用mysql_fetch_数组,我可以轻松计算返回的行数。我可以对mysql\u fetch\u对象执行类似的操作吗?

Php 使用mysql_fetch_数组,我可以轻松计算返回的行数。我可以对mysql\u fetch\u对象执行类似的操作吗?,php,mysql,oop,mysql-num-rows,Php,Mysql,Oop,Mysql Num Rows,(如有必要,请道歉——我的第一个堆栈溢出问题。如果有人提出建议,我很乐意修改它。我已经寻找了答案,但我恐怕我对术语的掌握还不够好,无法进行完整的搜索。) 我习惯于使用mysql\u fetch\u数组从数据库中获取记录。 当以这种方式获取记录时,mysql_num_rows会给我一个行数。 然而,在我当前的项目中,我使用的是mysql\u fetch\u对象。 mysql_num_rows似乎无法使用此函数,当我对查询结果进行“计数”时,我得到了预期的答案:1(一个对象) 是否有一种方法可以“查

(如有必要,请道歉——我的第一个堆栈溢出问题。如果有人提出建议,我很乐意修改它。我已经寻找了答案,但我恐怕我对术语的掌握还不够好,无法进行完整的搜索。)

我习惯于使用mysql\u fetch\u数组从数据库中获取记录。 当以这种方式获取记录时,mysql_num_rows会给我一个行数。 然而,在我当前的项目中,我使用的是mysql\u fetch\u对象。 mysql_num_rows似乎无法使用此函数,当我对查询结果进行“计数”时,我得到了预期的答案:1(一个对象)


是否有一种方法可以“查看”对象并计算其中的元素数?

尝试
count((数组)$object)

如果您以过程式方式使用它(即mysql\u fetch\u object()与$result->fetch\u object()),mysql\u num\u行的工作方式应该与使用mysql\u fetch\u array()时完全相同。您可以发布一些示例代码吗?

函数
mysql\u num\u rows
作用于结果资源,而不是对象行

例子
$link=mysql\u connect(“localhost”、“mysql\u用户”、“mysql\u密码”);
mysql_select_db(“数据库”,$link);
$sql=“从myTable中选择id、名称”;
$result=mysql\u查询($sql,$link);
$rowCount=mysql\u num\u行($result);
while($row=mysql\u fetch\u object){
回显“id:”.$row->id.“名称:”.$row->name.“
”; } echo“总计:.$rowCount;


我希望这是有用的:)

nice,但是你应该抛弃mysql_*函数,用mysqli替换它,pdo(
mysqli->num_rows
是一个属性,设置为返回的行数)这给了我一个不同的答案。它返回了我的SELECT查询中的字段数。我正在以这种方式使用它(以过程方式)。我不应该吗?不,按程序使用是可以的。你能发布你的代码片段吗?现在代码已经改变了很多,与此无关。谢谢你的提问。这很有趣(我不知道这种SELECT SQL\u CALC\u FOUND\u ROWS),但除了计算行数之外,我还想做其他事情。我认为
while()
中的
mysql\u fetch\u对象实际上应该是
mysql\u fetch\u对象($result)
$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;
<?php
mysql_connect("localhost", "user", "password");
mysql_select_db("database");

$result = mysql_query("SELECT SQL_CALC_FOUND_ROWS * FROM table");
$countQuery = mysql_query("SELECT found_rows() AS totalRows");
$rows = mysql_fetch_object($countQuery);
echo $rows->totalRows;
?>