php+static的用法,phpstatic静态变量修饰符的用法详解

php+static的用法,phpstatic静态变量修饰符的用法详解本文介绍下 php 中的静态变量修饰符 static 的具体用法 包括一些常用的例子 有需要的朋友 参考下吧 php 静态变量仅在局部函数域中存在 但当程序执行离开此作用域时 其值并不丢失 例子 说明 如果在声明中用表达式的结果对其赋值会导致解析错误 static a 0 1 static a sqrt 121 像上面的赋值方式会报错 下面具体讲下 PHPstatic 静态变量的用法 在 php 编程中

本文介绍下,php中的静态变量修饰符static的具体用法,包括一些常用的例子,有需要的朋友,参考下吧。

php静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。

例子:

说明:

如果在声明中用表达式的结果对其赋值会导致解析错误。

static $a=0+1;

static $a=sqrt(121);

像上面的赋值方式会报错。

下面具体讲下PHP static静态变量的用法。

在php编程中,有关变量范围的另一个重要特性是静态变量(static variable)。

静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。

先来看一个简单的php静态变量的例子:

本函数没什么用处,因为每次调用时都会将 $a 的值设为 0 并输出 “0”。

将变量加一的 $a++ 没有作用,因为一旦退出本函数则变量 $a 就不存在了。

要写一个不会丢失本次计数值的计数函数,要将变量 $a 定义为静态的:

例子:

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

静态变量也提供了一种处理递归函数的方法。

递归函数是一种调用自己的函数。

写递归函数时要小心,因为可能会无穷递归下去。必须确保有充分的方法来中止递归。

以下这个简单的函数递归计数到 10,使用静态变量 $count 来判断何时停止:

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

来看这个声明静态变量的例子:

有关php中static静态变量修饰符的内容,就介绍这么多了,希望对大家有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204656.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午7:50
下一篇 2026年3月19日 下午7:50


相关推荐

  • 国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例

    国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例

    2026年3月16日
    2
  • Navicat 15 for MySQL激活码-激活码分享

    (Navicat 15 for MySQL激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月26日
    388
  • 配置DNAT发布内网服务器

    配置DNAT发布内网服务器3 配置 DNAT 发布内网服务器 问题本案例要求熟悉 DNAT 策略的典型应用场景 完成以下任务 1 通过 DNAT 策略发布内网的 Web 服务器 2 通过 DNAT 策略发布内网的 SSH 服务器 3 通过 DNAT 策略发布内网的 FTP 服务器 方案沿用练习二 采用三台 RHEL6 虚拟机 svr5 gw1 pc120 如图 3 所示 其中 虚拟机 svr5 作为局域网络的测试机 接入 NAT 网络 virbr0 虚拟机 p

    2026年3月17日
    3
  • stm32 st_基于STM32

    stm32 st_基于STM32用了不少芯片,就只有51有位操作,这个特性很喜欢,赋值简单、效率又高且节省内存,不必为了一个bool去分配一个uint8.发现stm32有Bit-Banding,就试了一下,用MDK-ARM环境下的汇编代码做了一些比较。操作,清零USART1的SR寄存器的TC位:方法一://利用USART_TypeDef这个结构寻到SR的地址,再赋值USART1->SR&amp…

    2022年10月13日
    5
  • oracle导出建表sql_Oracle数据库语句汇总

    oracle导出建表sql_Oracle数据库语句汇总第一步:安装pl/sqlDeveloper(此程序Oracle必备软件,在此不再讨论)第二步:登录pl/sqlDeveloper                                           登录界面第三步在左侧菜单选择Tables第三步点开Tables后在要导出的表上右键-DBMS_MetaData-DDL即可导出创建表的DDL语句

    2025年9月8日
    5
  • 用户日志管理「建议收藏」

    用户日志管理「建议收藏」摘要本发明涉及应用系统日志管理技术领域,提供了一种日志管理方法和系统,所述方法包括如下步骤:S1:初始化系统业务功能列表和业务功能方法列表;S2:将业务操作中的具体操作信息与系统日志表和历史数据日志表直接相关联;S4:根据业务操作自动记录日志信息。本发明从整体考虑整个应用系统的日志信息与业务操作挂接,用户在运行时可以根据当前的需要,选择某业务操作是否需要记录日志,并且在业务操作界面能即时将相关的日…

    2022年5月2日
    70

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号