php static静态变量教程详解

WBOY
Freigeben: 2016-07-25 08:52:41
Original
816 Leute haben es durchsucht
  1. function Test()
  2. {
  3. $w3sky = 0;
  4. echo $w3sky;
  5. $w3sky++;
  6. }
  7. ?>
复制代码

本函数每次调用时都会将 $w3sky 的值设为 0 并输出 "0"。 将变量加一的 $w3sky++ 没有其到效果,因为一旦退出本函数则变量 $w3sky 就不存在了。

例子,实现一个不会丢失本次计数值的计数函数,要将变量 $w3sky 定义为静态(static)的,就用到了php静态变量。php静态变量的简单例子

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

本函数每调用Test()都会输出 $w3sky 的值并加一。 静态变量也提供了一种处理递归函数的方法。递归函数是一种自己调用自己的方法。 写递归函数时要小心,因为可能会无穷递归下去,没有出口.务必确保 有方法来中止递归。以下这个简单的函数递归计数到 10,使用静态变量 $count 来判断何时停止:

2,静态变量与递归函数的例子:

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

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

  1. function foo(){
  2. static $int = 0;// correct
  3. static $int = 1+2; // wrong (as it is an expression)
  4. static $int = sqrt(121); // wrong (as it is an expression too)
  5. $int++;
  6. echo $int;
  7. }
  8. ?>
复制代码


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage