首頁 >後端開發 >php教程 >PHP使用函數靜態變數實作指定迭代次數步驟詳解

PHP使用函數靜態變數實作指定迭代次數步驟詳解

php中世界最好的语言
php中世界最好的语言原創
2018-05-18 10:23:201425瀏覽

這次帶給大家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基於反ajax推送實作訊息即時推播步驟詳解

以上是PHP使用函數靜態變數實作指定迭代次數步驟詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn