您现在的位置是:首页 > PHP框架交流PHP框架交流
php把对象count 统计 实现Countable计算数量 php进阶
上善若水2022-01-02 16:04:55【PHP框架交流】 1996人已围观
简介php把对象count 统计 count计算数量,我们知道一般count作用于数量,用于计算数组里面的元素数量, class A implements \Countable { /**
php把对象count 统计 count计算数量,我们知道一般count作用于数量,用于计算数组里面的元素数量,
class A implements \Countable
{
/**
* @var array $data
*/
public $data = [];
public function count()
{
return count($this->data);
}
}
$a = new A();
$array = ['ak' => 'a'];
print_r(count($array));
如图就可以轻松实现对一个对象调用count() 函数了.打印结果为
/**
* Counts all elements in an array, or something in an object.
* <p>For objects, if you have SPL installed, you can hook into count() by implementing interface {@see Countable}.
* The interface has exactly one method, {@see Countable::count()}, which returns the return value for the count() function.
* Please see the {@see Array} section of the manual for a detailed explanation of how arrays are implemented and used in PHP.</p>
* @link https://php.net/manual/en/function.count.php
* @param array|Countable $value The array or the object.
* @param int $mode [optional] If the optional mode parameter is set to
* COUNT_RECURSIVE (or 1), count
* will recursively count the array. This is particularly useful for
* counting all the elements of a multidimensional array. count does not detect infinite recursion.
* @return int the number of elements in var, which is
* typically an array, since anything else will have one
* element.
* <p>
* If var is not an array or an object with
* implemented Countable interface,
* 1 will be returned.
* There is one exception, if var is null,
* 0 will be returned.
* </p>
* <p>
* Caution: count may return 0 for a variable that isn't set,
* but it may also return 0 for a variable that has been initialized with an
* empty array. Use isset to test if a variable is set.
* </p>
*/
#[Pure]
function count(Countable|array $value, int $mode = COUNT_NORMAL): int {}
源码内部就是Countable|array就可以调用这个方法.
很赞哦! (2)
相关文章
随机图文
-
PHP8.1新特性 对字符串键控数组的数组解包支持
PHP8.1新特性 对字符串键控数组的数组解包支持,这样我们再对数组操作更加灵活方便,以前都是依赖数组函数去实现,现在写法更加便捷。官方文档https://www.php.net/manual/zh/ -
springboot 使用quartz 创建简单定时任务 入门篇
quartz是一款优秀的任务调度框架,尽管在springboot中已经集成有任务调度,但是绝大多数情况也还是使用了quartz在执行. 创建springboot项目 同时引入quartz包pom.xm -
人均GDP过万美元在世界上到底是什么水平?
2019年1月17日,国家统计局发布数据,2019年我国国内生产总值(GDP)接近100万亿元大关。按年平均汇率折算,人均GDP达10276美元,跨上1万美元台阶。很多朋友们都关心,人均GDP1万美元 -
抖音笑话段子撩人套路
1、从今日开端我茹素,由于你是我的菜 2、你晓得泰语 撒那嘿呦是甚么意义吗? 我爱你 我也是 3、我觉得你今日怎样这么怪啊? 那里怪了? 怪好看的!! 4、美男,跟你问一下,那条路怎样走? 哪条路? 通往你内心的路 5、你有舆图吗? 怎样了? 我在你的眼睛里迷路了 6、哎,给你看一个美男? 甚么?_? 拿镜子照向她 7、你能够帮我洗个工具吗? 洗甚么? (洗)喜好我 8、你会模拟啄木鸟吗 会啊 来,把我的脸当作树 9、女:小哥哥,小哥哥,给你个工具你要吗? 男:甚么呀