PHP静态变量static的示例代码演示

开发 后端
PHP静态变量static提供了一种处理递归函数的方法,我们在实际操作中必须确保有充分的方法来终止递归。下面就介绍了相关的使用方法。

PHP中的变量范围里,有一个非常重要的变量—PHP静态变量static。在接下来的这篇文章中,我们将会以具体的代码示例为大家详细介绍有关PHP静态变量static的主要用法,希望对大家有所帮助。

看看下面的例子:

例子 演示需要PHP静态变量static的例子

 

  1. < ?PHP  
  2. function Test(){  
  3. $w3sky = 0;  
  4. echo $w3sky;  
  5. $w3sky++;  
  6. }  
  7. ?> 

 

#t#本函数没什么用处,因为每次调用时都会将 $w3sky 的值设为 0 并输出 "0"。将变量加一的 $w3sky++ 没有作用,因为一旦退出本函数则变量 $w3sky 就不存在了。要写一个不会丢失本次计数值的计数函数,要将变量 $w3sky 定义为静态的:

例子 使用PHP静态变量static的例子

  1. < ?PHP  
  2. function Test(){  
  3. static $w3sky = 0;  
  4. echo $w3sky;  
  5. $w3sky++;  
  6. }  
  7. ?> 

现在,每次调用 Test() 函数都会输出 $w3sky 的值并加一。

静态变量也提供了一种处理递归函数的方法。递归函数是一种调用自己的函数。写递归函数时要小心,因为可能会无穷递归下去。必须确保有充分的方法来中止递归。一下这个简单的函数递归计数到 10,使用静态变量 $count 来判断何时停止:

例子 PHP静态变量static与递归函数

 

  1. < ?PHP  
  2. function Test(){  
  3. static $count = 0;  
  4. $count++;  
  5. echo $count;  
  6. if ($count < 10) {  
  7. Test();  
  8. }  
  9. $count--;  
  10. }  
  11. ?> 

 

注: 静态变量可以按照上面的例子声明。如果在声明中用表达式的结果对其赋值会导致解析错误。

例子 声明PHP静态变量static

 

  1. < ?PHP  
  2. function foo(){  
  3. static $int = 0;// correct  
  4. static $int = 1+2; // wrong (as it is an expression_r_r)  
  5. static $int = sqrt(121); // wrong (as it is an expression_r_r too)  
  6. $int++;  
  7. echo $int;  
  8. }  
  9. ?> 

 

责任编辑:曹凯 来源: 新浪博客
相关推荐

2011-06-02 14:25:45

静态变量

2009-12-10 13:31:20

PHP self关键字

2023-12-29 08:27:36

C语言静态变量开发

2020-12-10 10:11:52

Javastatic关键字

2009-08-27 10:44:21

C#静态变量

2011-07-11 16:13:01

Java静态变量实例变量

2011-05-26 15:10:15

静态变量

2023-10-07 15:53:05

C/C++静态变量内存

2009-10-28 09:47:01

VB.NET局部静态变

2023-12-04 09:37:00

C++静态变量

2009-11-16 10:40:02

PHP上传文件代码

2009-11-16 10:49:43

PHP上传文件代码

2009-08-31 10:00:07

C#静态变量

2010-03-18 16:17:29

Python 变量类型

2009-11-17 17:17:50

PHP上传多个文件

2010-01-13 10:34:23

VB.NET局部静态变

2009-08-31 10:18:00

C#静态变量定义C#静态变量

2009-08-31 09:47:22

C#静态变量初始化

2010-05-31 14:59:36

PHP + MySQL

2011-08-10 17:16:01

Objective-C静态变量
点赞
收藏

51CTO技术栈公众号