在《PHP算法练习五:判断一个数是不是指定数的倍数》中给大家介绍了如何判断一个数是不是指定数的倍数,这是一个非常简单基础的练习,想必大家都已经掌握了。
下面我继续带大家学习PHP算法相关的知识,希望对大家能有所帮助吧!
正如标题所言,本文我们要求用PHP判断一个值在数组中是不是连续出现三次,也就是说一个数组中某个值连续出现一次、两次都要被判断为假。
各位可以自己在本地练习一下,再看我下面的方法:
PHP代码如下:
<?php function test($nums) { $arra_len = sizeof($nums) - 1; $n = 0; for ($i = 0; $i < $arra_len; $i++) { $n = $nums[$i]; if ($n == $nums[$i + 1] && $n == $nums[$i + 2]) return true; } return false; } var_dump(test(array(1, 1, 2, 2, 1))); var_dump(test(array(1, 1, 2, 1, 2, 3))); var_dump(test(array(1, 1, 1, 2, 2, 2, 1)));
输出结果是:
很明显只有第三个数组符合要求。
这里需要大家了解一个sizeof()
函数;
sizeof()
函数就是用于计算数组中的单元数目或对象中的属性个数,sizeof()函数也是count()函数的别名,而count()函数也是用于返回数组中元素的数目。
sizeof
函数的语法是sizeof(array,mode);
,
参数分别表示:
array必需,规定数组。
mode可选,规定模式。
可能的值有:
0 - 默认。不对多维数组中的所有元素进行计数
1 - 递归地计数数组中元素的数目(计算多维数组中的所有元素)
注:当变量未被设置,或是变量包含一个空的数组,该函数会返回 0;可使用 isset()
变量来测试变量是否被设置。
→ isset() 函数用于检测变量是否已设置并且非 NULL。如果已经使用 unset() 释放了一个变量之后,再通过 isset() 判断将返回 FALSE。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。
最后给大家推荐最新最全面的《PHP视频教程》~快来学习吧!
以上是PHP算法练习六:判断一个值是否在数组中连续出现三次的详细内容。更多信息请关注PHP中文网其他相关文章!