Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.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中实现可数接口?_Php_Class_Interface_Count - Fatal编程技术网

如何在PHP中实现可数接口?

如何在PHP中实现可数接口?,php,class,interface,count,Php,Class,Interface,Count,因此,count($object)将返回其中的记录数如果您安装了标准PHP库,您应该能够简单地在类中实现Countable,然后定义count()函数: class foo implements Countable { ... public function count() { # do stuff here return $count; } } 请在此处阅读有关SPL的更多信息: 有关可数接口的更多信息,请参见此处: 看一看 请注意,

因此,
count($object)
将返回其中的记录数

如果您安装了标准PHP库,您应该能够简单地在类中实现Countable,然后定义count()函数:

class foo implements Countable {
    ...
    public function count() {
        # do stuff here
        return $count;
    }
}
请在此处阅读有关SPL的更多信息:

有关可数接口的更多信息,请参见此处: 看一看


请注意,如果您的类具有名称空间,则必须为可数接口提供根名称空间:

namespace应用程序;
类MyClass实现了可数{
公共功能计数(){
//返回计数
}
}
上述操作会引发一个错误:

找不到接口“App\Countable”

要求解(请注意Countable前面的斜杠):

namespace应用程序;
类MyClass实现\Countable{
公共功能计数(){
//返回计数
}
}
(仅供参考,不确定这是否是Laravel特有的,但我认为不是。)

class MyClass implements Countable {
    public function count() {
        //return count
    }
}

$c = new MyClass();
count($c); //calls $c->count();