位置: 编程技术 - 正文

php中static 静态变量和普通变量的区别(php静态方法可以被继承吗)

编辑:rootadmin

推荐整理分享php中static 静态变量和普通变量的区别(php静态方法可以被继承吗),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php静态方法,php中static的用法,php静态属性和静态方法,php如何实现静态化,php静态函数,php静态方法使用,php中什么是静态变量,php静态方法使用,内容如对您有帮助,希望把文章链接给更多的朋友!

php中static 静态变量和普通变量的区别

在变量的前面加上static 就构成了静态变量(static 变量)。

static变量和普通变量的区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效, 在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用, 因此可以避免在其它源文件中引起错误。

static变量和普通变量的区别:

static全局变量与普通全局变量区别:static全局变量只初使化一次,防止在其他文件单元中被引用;static局部变量和普通局部变量区别:static局部变量只被初始化一次,下一次依据上一次结果值;static函数与普通函数区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝。

在全局变量之前加上关键字static,全局变量就被定义成为一个全局静态变量。

1)内存中的位置:静态存储区(静态存储区在整个程序运行期间都存在)

2)初始化:未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化)

3)作用域:全局静态变量在声明他的文件之外是不可见的。准确地讲从定义之处开始到文件结尾。

php中static 静态变量和普通变量的区别(php静态方法可以被继承吗)

static 变量的好处:

不会被其他文件所访问,修改其他文件中可以使用相同名字的变量,不会发生冲突。

内存中的位置:静态存储区

初始化:未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化)作用域:作用域仍为局部作用域,当定义它的函数或者语句块结束的时候,作用域随之结束。

注:当static用来修饰局部变量的时候,它就改变了局部变量的存储位置,从原来的栈中存放改为静态存储区。但是局部静态变量在离开作用域之后,并没有被销毁,而是仍然驻留在内存当中,直到程序结束,只不过我们不能再对他进行访问。当static用来修饰全局变量的时候,它就改变了全局变量的作用域(在声明他的文件之外是不可见的),但是没有改变它的存放位置,还是在静态存储区中。

普通函数实例:

要将变量 $w3sky 定义为静态(static)的,代码如下:

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

注: 静态变量不能用表达式的方式声明例如:static $int = 1+2; 这种方式就是错的 而static $int = 1; 这种声明方式则是对的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

thinkPHP线上自动加载异常与修复方法实例分析 本文实例讲述了thinkPHP线上自动加载异常与修复方法。分享给大家供大家参考,具体如下:项目遇到一个奇怪的问题,本地代码正常,服务器上却不正常

PHP 芝麻信用接入的注意事项 芝麻官方下载的SDK,跑不起来,百度搜索一番也没有发现太多的文章,只有一个CSDN博客写的一篇文章,比较有参考价值详细查阅文档+几天测试整理以下

thinkPHP订单数字提醒功能的实现方法 本文实例讲述了thinkPHP订单数字提醒功能的实现方法。分享给大家供大家参考,具体如下:运行效果图如下:html:ulclass="am-avg-sm-5"liclass="condition-li"status=

标签: php静态方法可以被继承吗

本文链接地址:https://www.jiuchutong.com/biancheng/301297.html 转载请保留说明!

上一篇:php 如何禁用eval() 函数实例详解(php禁用system用什么绕过)

下一篇:thinkPHP线上自动加载异常与修复方法实例分析(thinkphp教程)

  • 采购合同缴纳印花税依据
  • 已付预付款当月应付金额怎么填写?
  • 资产超过5000万的企业所得税税率
  • 定期定额不开票违法吗
  • 个体工商户需要报税吗
  • 待抵扣进项税额怎么算
  • 现金日记账怎么记账借方还是贷方
  • 高速公路通行费发票可以抵扣增值税吗
  • 安置残疾人就业税收优惠政策
  • 无法收回的应收账款情况说明
  • 电子商业承兑对方接收了还可以作废吗
  • 订单式生产管理
  • 企业购买原材料,货款未支付
  • 营改增后取得施工作业收入需要交哪些税?
  • 税控设备可以跨省销售吗
  • 财务人员的大忌
  • 已验旧和未验旧
  • 研发费用需要发什么科目
  • 一般纳税人技术开发税率
  • 幼儿园收的餐费必须与食谱做平账怎么调账
  • 月销售额小于10万的一般纳税人减免
  • 移动通信定额发票
  • 玩穿越火线总是提示机器遇到
  • 计提个人社保会计分录实操
  • win7系统的系统配置里设置开机启动项
  • 计提跌价准备会影响利润吗
  • 跨年度增值税发票作废怎么退税
  • 股利分配账务处理
  • php常用函数大全
  • 安保费差额纳税是什么意思
  • php获取ftp文件目录
  • PHP:bzdecompress()的用法_Bzip2函数
  • win10电脑c盘满了怎么转移到d盘
  • 固定资产自行建造的会计处理
  • 个人销售非住宅土地增值税
  • php中实现文件上传需要用到哪几个函数
  • 深度学习模型部署综述(ONNX/NCNN/OpenVINO/TensorRT)
  • 【历史上的今天】3 月 23 日:网景创始人出生;FORMAC 语言的开发者诞生;PRMan 非商业版发布
  • php使用oci8扩展连接oracle
  • 印花税申报完成如何缴纳
  • MicrosoftSQLserver2014
  • mongodb数据库基本操作
  • 企业年报股东出资信息
  • 其他应付款在清算时怎么处理
  • 营业外收入汇算清缴时也得计入收入
  • 小规模超过30万怎么交增值税
  • sql服务无法启动 3417
  • 出售可供出售金融资产
  • 投资性房地产公允价值模式账务处理
  • 收到其他企业投资是属于其他业务收入吗
  • 什么是盈余公积和资本公积
  • 运费可以抵扣进项税额
  • 企业如何降低存款利息
  • 应交税费会计分录实例分析
  • 如何解决局域网问题
  • mysql jsonb
  • windows内存诊断工具检测到硬件问题怎么办
  • 如何关闭mac上的icloud
  • mscorsvw.exe是什么进程
  • window7qq登录失败
  • Ubuntu下VirtualBox的vdi文件克隆方法
  • centos 安装svn
  • linux设置环境变量的命令
  • win10系统微软账户密码忘了
  • cocos creator特效制作
  • javaScript基础语法数据类型
  • js正则表达式gi
  • assets怎么编辑
  • linux如何启动tomcat
  • dos命令行怎么打开
  • jquery选择器的使用
  • material design admin
  • jquery怎么给文本框赋值
  • node.js入门经典pdf
  • js模拟new
  • 百旺税控密码忘记了怎么找回
  • 没有交税,个人税可以低房子利息嘛
  • 国家税务局2017年11号
  • 医院是自给自足吗
  • 上海市浦东新区人民医院
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设