這次帶給大家PHP使用函數靜態變數實作指定迭代次數步驟詳解,PHP使用函數靜態變數實作指定迭代次數的注意事項有哪些,下面就是實戰案例,一起來看一下。
在PHP中,除了類別的靜態成員屬性外,在函數中同樣可以利用 static 定義靜態變數。從而便捷的完成函數迭代。
範例1:
<?php function Test() { $a = 0; echo $a; $a++; } ?>
在上例中,每次呼叫Test函數,a都被重新賦值為0,因為一旦退出本函數則變數a都被重新賦值為0,因為一旦退出本函數則變數a 就不存在了。要完成迭代,需要寫一個不會遺失本次計數值的計數函數,要將變數$a 定義為靜態的:
<?php function test() { static $a = 0; echo $a; $a++; } ?>
這樣$a只在第一次呼叫時被賦值,之後在每次呼叫時加1,並且不會被重寫。
這樣便可利用此特性,對某操作指定次數的迭代:
例2:(取得將某陣列彈出5個元素後的結果)
$arr = range(1,10,1); function test($arr) { static $count=0; array_pop($arr); $count++; if ($count < 5) { test($arr); }else{ var_dump($arr);exit; } } test($arr);
運行結果:
array(5) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4]=> int(5) }
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是PHP使用函數靜態變數實作指定迭代次數步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!