在《PHP算法練習五:判斷一個數(shù)是不是指定數(shù)的倍數(shù)》中給大家介紹了如何判斷一個數(shù)是不是指定數(shù)的倍數(shù),這是一個非常簡單基礎(chǔ)的練習,想必大家都已經(jīng)掌握了。
下面我繼續(xù)帶大家學習PHP算法相關(guān)的知識,希望對大家能有所幫助吧!
正如標題所言,本文我們要求用PHP判斷一個值在數(shù)組中是不是連續(xù)出現(xiàn)三次,也就是說一個數(shù)組中某個值連續(xù)出現(xiàn)一次、兩次都要被判斷為假。
各位可以自己在本地練習一下,再看我下面的方法:
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)));
輸出結(jié)果是:
很明顯只有第三個數(shù)組符合要求。
這里需要大家了解一個sizeof()
函數(shù);
sizeof()
函數(shù)就是用于計算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€數(shù),sizeof()函數(shù)也是count()函數(shù)的別名,而count()函數(shù)也是用于返回數(shù)組中元素的數(shù)目。
sizeof
函數(shù)的語法是sizeof(array,mode);
,
參數(shù)分別表示:
array必需,規(guī)定數(shù)組。
mode可選,規(guī)定模式。
可能的值有:
0 – 默認。不對多維數(shù)組中的所有元素進行計數(shù)
1 – 遞歸地計數(shù)數(shù)組中元素的數(shù)目(計算多維數(shù)組中的所有元素)
注:當變量未被設(shè)置,或是變量包含一個空的數(shù)組,該函數(shù)會返回 0;可使用 isset()
變量來測試變量是否被設(shè)置。
→ isset() 函數(shù)用于檢測變量是否已設(shè)置并且非 NULL。如果已經(jīng)使用 unset() 釋放了一個變量之后,再通過 isset() 判斷將返回 FALSE。若使用 isset() 測試一個被設(shè)置成 NULL 的變量,將返回 FALSE。
最后給大家推薦最新最全面的《PHP視頻教程》~快來學習吧!