【发布时间】:2019-10-31 17:44:53
【问题描述】:
我有一个包含项目 ID 和数量的数组。数量基本上是一个项目被放置在集合中的次数。所以项目1在集合中出现了十次,项目2在集合中出现了两次,项目9出现了一次。
所以这意味着我有一个完整的集合,因为项目 9 只在其中一次。
$data = [
1 => 10,
2 => 2,
3 => 2,
4 => 2,
5 => 2,
6 => 2,
7 => 2,
8 => 2,
9 => 1
];
下面:我现在有两个集合,因为项目 9 出现了两次。
$data = [
1 => 10,
2 => 2,
3 => 2,
4 => 2,
5 => 2,
6 => 2,
7 => 2,
8 => 2,
9 => 2
];
在下一个实例中,我仍然只有两个集合,因为项目 3 只在其中两次。希望我正在尝试做的事情是有意义的。
$data = [
1 => 10,
2 => 5,
3 => 2,
4 => 5,
5 => 8,
6 => 4,
7 => 4,
8 => 5,
9 => 6
];
数组也不固定为 9 个项目,它可以是任意数量。
这应该是相当简单的,但我已经为此绞尽脑汁了很长时间,但它只是卡住了;我现在离问题太近了。我原本以为我可以将项目总数除以数量,但没有奏效。
如何执行此操作,以便循环遍历数组并查看我有多少完整的集合?
【问题讨论】:
-
根据您对问题的描述,我们不能简单地获取数组中的最小数字吗?示例:$min = min($data);
-
@KadeM。问题(我相信)是如果其中一项为空,它仍会显示最小的数字,而不是
0。 -
但是如果项目是空的,那意味着你有零个收藏,对吧?据我所知,min() 应该为空值返回 0。
-
@KadeM。是的,你明白了。我正在使用 Laravel 的实际集合进行测试,它没有显示 0,而是显示最低的 int,这是错误的。将此作为答案,我会接受。谢谢!
-
不客气!祝你有美好的一天,蒂姆。
标签: php