PHP中数组的count()函数问题。
我用一个循环把若干元素逐个放到数组$tag[]里,数组里面有重复的元素,所以我用$tag2=array_unique($tag)把里面的重复元素删除,之后再用一个上限足够...
我用一个循环把若干元素逐个放到数组$tag[]里,
数组里面有重复的元素,所以我用$tag2 = array_unique($tag)把里面的重复元素删除,
之后再用一个上限足够大的for循环将这个$tag2数组中每个元素逐一输出,当然有许多元素因为被删除了是空的,所以循环里面也进行了判断strlen($tag2[$i]) > 0才输出,输出了n个元素。
1、但我用count($tag2)算出的的数组元素个数却比n少很多,按理说不是应该有n个吗?
2、为什么会出现这种情况?
3、PHP没有初始化元素个数的,因为经过删除重复元素的函数处理后,数组中原本的很多重复元素被删除,中间多了很多空的元素,大概50多个,count()的原理是计算到什么程度才停止的? 展开
数组里面有重复的元素,所以我用$tag2 = array_unique($tag)把里面的重复元素删除,
之后再用一个上限足够大的for循环将这个$tag2数组中每个元素逐一输出,当然有许多元素因为被删除了是空的,所以循环里面也进行了判断strlen($tag2[$i]) > 0才输出,输出了n个元素。
1、但我用count($tag2)算出的的数组元素个数却比n少很多,按理说不是应该有n个吗?
2、为什么会出现这种情况?
3、PHP没有初始化元素个数的,因为经过删除重复元素的函数处理后,数组中原本的很多重复元素被删除,中间多了很多空的元素,大概50多个,count()的原理是计算到什么程度才停止的? 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询