PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

什么是静态变量?其特点是?作用域在哪?(附实例)

慕斯
慕斯 原创
2021-06-04 10:04:39 6517浏览

上篇文章给大家介绍了《php中全局变量如何定义?如何声明?其作用是什么?(总结)》,本文继续给大家介绍什么是静态变量?其特点是?作用域在哪?(附实例),本篇文章附实例哟,还不进来看看!!!

什么是静态变量:

在函数内部使用static声明得变量就是静态变量;

静态变量的特征:

  • 静态变量只会被初试化一次;

  • 静态变量在函数运行结束后不会被收回;

  • 静态函数一般用于计算函数的调用次数;

<?php
     /****** 静态函数*/
     function addNum(){
      $a = 1;
       echo $a. &#39;<br/>&#39;;
       $a ++;
     }
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     
?>

代码解析:

首先我们先用function定义一个函数[addNum()],紧接着赋初始值($a),输出(echo)$a,然后让$a自增;

如果说我们开始调用addNum();我们此时输出的结果是什么呢?根据下方代码运算的结果可以看出都是1;因为我们调用了函数,一调用函数紧接着就会执行,当函数执行后,进入函数内部,紧接着会声明变量,并且执行,当执行完后,变量就会随之被释放,以此类推,我们得出的结果都是1;以上使我们普通的变量,而我们所定义的是静态函数,是因为在函数内部有一个静态变量;

运行结果如下:

20.JPG

关于静态变量

<?php
     /****** 静态函数*/
     function addNum(){
       static $a = 1;
       echo $a. &#39;<br/>&#39;;
       $a ++;
     }
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     addNum();
     
?>

代码解析:

首先我们先声明一个静态变量(static $a),然后执行代码,得到的运算结果就是1,2,3,4,5,6,7;

如下图所示;

21.JPG

在静态变量中,当我们第一次去调用并到函数内部执行了此变量,声明了静态变量,初始化为1,而且此次调用只执行一次静态变量一般我们会做统计函数调用的次数;

推荐学习:《PHP视频教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。