当前位置:首页 > PHP教程 > php应用 > 列表

PHP使用函数静态变量实现指定迭代次数的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-05 16:03:56 浏览: 评论:0 

这篇文章主要介绍了PHP使用函数静态变量实现指定迭代次数的方法,结合实例形式分析了php静态变量数据存储的相关操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP使用函数静态变量实现指定迭代次数的方法,分享给大家供大家参考,具体如下:

在PHP中,除了类的静态成员属性外,在函数中同样可以利用 static 定义静态变量。从而便捷的完成函数迭代。

例1:

  1. <?php 
  2. function Test() 
  3.   $a = 0; 
  4.   echo $a
  5.   $a++; 
  6. ?> 

在上例中,每次调用Test函数,a都被重新赋值为0,因为一旦退出本函数则变量a都被重新赋值为0,因为一旦退出本函数则变量a 就不存在了。要想完成迭代,需要写一个不会丢失本次计数值的计数函数,要将变量 $a 定义为静态的:

  1. <?php 
  2. function test() 
  3.   static $a = 0; 
  4.   echo $a
  5.   $a++; 
  6. ?> 

这样$a只在第一次调用时被赋值,之后在每次调用时加1,并且不会被重写。

这样便可利用此特性,对某操作指定次数的迭代:

例2:(获取将某数组弹出5个元素后的结果)

  1. $arr = range(1,10,1); 
  2. function test($arr
  3.   static $count=0; 
  4.   array_pop($arr); 
  5.   $count++; 
  6.   if ($count < 5) { 
  7.     test($arr); 
  8.   }else
  9.     var_dump($arr);exit
  10.   } 
  11. test($arr); 

运行结果:

  1. array(5) { 
  2.  [0]=> 
  3.  int(1) 
  4.  [1]=> 
  5.  int(2) 
  6.  [2]=> 
  7.  int(3) 
  8.  [3]=> 
  9.  int(4) 
  10.  [4]=> 
  11.  int(5) 
  12. }

Tags: PHP函数静态 PHP迭代次数

分享到: