PHP-php中的num_row是个变量还是个函数?

发布于 2017-03-04 21:02:00 字数 554 浏览 1197 评论 2

num_row在过程写法的时候是mysqli_num_rows(),但是在对象写法的时候却是$rs->num_rows,
本以为自己错了,后改成$rs->num_rows(),反而报undefined method mysqli_result::num_rows()的错误。

在查看mysqli.php文件中,对于num_rows的定义是:
/**
* Return the number of rows in statements result set
* @link http://www.php.net/manual/en/mysqli-stmt.num-rows.php
* @param stmt mysqli_stmt
* @return int An integer representing the number of rows in result set.
*/
public function num_rows (mysqli_stmt $stmt) {}

说明他的确是一个函数,为什么用的时候却不要() ?

拜大神赐教!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

灵芸 2017-10-12 00:16:58

这是1个函数:

mysql_num_rows() 函数返回结果集中行的数目。

例子:

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

$db_selected = mysql_select_db("test_db",$con);

$sql = "SELECT * FROM person";
$result = mysql_query($sql,$con);
echo mysql_num_rows($result);

mysql_close($con);
?>

晚风撩人 2017-09-07 08:52:09

因为我没找到mysqli.php,我猜是用__get()实现的,类似于这样:

 <?php

class C {

function num_rows() {
return 9;
}

function __get($func) {
return $this->$func();
}
}

$c = new C();

var_dump($c->num_rows);

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文