这样count($object)
将返回其中的记录数
答案 0 :(得分:9)
如果安装了标准PHP库,您应该能够在类中实现Countable,然后定义count()函数:
class foo implements Countable {
...
public function count() {
# do stuff here
return $count;
}
}
在此处阅读有关SPL的更多信息: http://www.php.net/manual/en/book.spl.php
有关Countable界面的更多信息: http://php.net/manual/en/countable.count.php
答案 1 :(得分:6)
class MyClass implements Countable {
public function count() {
//return count
}
}
$c = new MyClass();
count($c); //calls $c->count();
答案 2 :(得分:0)
请注意,如果您的类是命名空间,则必须为Countable接口提供根命名空间:
namespace App;
class MyClass implements Countable {
public function count() {
//return count
}
}
以上抛出错误:
找不到接口“ App \ Countable”
要解决(请注意Countable前面的斜杠):
namespace App;
class MyClass implements \Countable {
public function count() {
//return count
}
}
(仅供参考,不确定这是否是Laravel特有的,但我想不是。)