php变量范围介绍


Posted in PHP onOctober 15, 2012

例如:

<?php 
$a = 1; 
include 'b.inc'; 
?>

这里变量 $a 将会在包含文件 b.inc 中生效。但是,在用户自定义函数中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内,此时为局部变量。


PHP 中全局变量在函数中使用时必须申明为global。

在函数中使用global声明的变量即为全局变量,可以在函数外使用。注意:global声明变量时,不能直接对变量赋值,需要先声明后赋值。

在全局范围内,也可以通过$GLOBALS访问全局变量,在函数内不需要使用global关键字来访问全局变量了。$GLOBALS 是一个关联数组,每一个变量为一个元素,键名对应变量名,值对应变量的内容。$GLOBALS 之所以在全局范围内存在,是因为 $GLOBALS 是一个超全局变量。

常量可以不用理会变量的作用域而在任何地方定义和访问;

变量范围的另一个重要特性是静态变量(static variable)。静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。静态变量仅在第一次调用时进行初始化,声明时可以对其赋值,不能是表达式值。如果在声明中用表达式的结果对其赋值会导致解析错误。

当把一个引用(带上&的变量或对象)赋值给一个静态变量时,引用并不是静态地存储的,第二次调用函数时静态变量其值并没有被记住。同样,当把一个引用(带上&的变量或对象)赋值给global变量时,此变量的变化对函数外不起作用,作用范围只在该函数内。

PHP 相关文章推荐
php session和cookie使用说明
Apr 07 PHP
php分页思路以及在ZF中的使用
May 30 PHP
php中使用__autoload()自动加载未定义类的实现代码
Feb 06 PHP
php过滤XSS攻击的函数
Nov 12 PHP
解密ThinkPHP3.1.2版本之模块和操作映射
Jun 19 PHP
php实现的click captcha点击验证码类实例
Sep 23 PHP
php删除左端与右端空格的方法
Nov 29 PHP
PHP中实现Bloom Filter算法
Mar 30 PHP
PHP也能干大事 随机函数
Apr 14 PHP
php读取torrent种子文件内容的方法(测试可用)
May 03 PHP
PHP自动生成缩略图函数的源码示例
Mar 18 PHP
php swoole多进程/多线程用法示例【基于php7nts版】
Aug 12 PHP
php模板函数 正则实现代码
Oct 15 #PHP
php mssql扩展SQL查询中文字段名解决方法
Oct 15 #PHP
PHP获取文件后缀名的三个函数
Oct 15 #PHP
php标签云的实现代码
Oct 10 #PHP
域名和cookie问题(域名后缀)
Oct 10 #PHP
记录PHP错误日志 display_errors与log_errors的区别
Oct 09 #PHP
php在程序中将网页生成word文档并提供下载的代码
Oct 09 #PHP
You might like
如何设置mysql允许外网访问
2013/06/04 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
一个简洁实用的PHP缓存类完整实例
2014/07/26 PHP
PHP操作MySQL事务实例
2014/11/05 PHP
PHP中的流(streams)浅析
2015/07/02 PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
2016/09/22 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
利用js正则表达式验证手机号,email地址,邮政编码
2014/01/23 Javascript
最全面的JS倒计时代码
2016/09/17 Javascript
微信小程序图片宽100%显示并且不变形
2017/06/21 Javascript
详解vue渲染从后台获取的json数据
2017/07/06 Javascript
gulp教程_从入门到项目中快速上手使用方法
2017/09/14 Javascript
详解React Native顶|底部导航使用小技巧
2017/09/14 Javascript
在vue中使用Autoprefixed的方法
2018/07/27 Javascript
解决Vue+Element ui开发中碰到的IE问题
2018/09/03 Javascript
Webpack中loader打包各种文件的方法实例
2019/09/03 Javascript
layer更改皮肤的实现方法
2019/09/11 Javascript
浅析vue-cli3配置webpack-bundle-analyzer插件【推荐】
2019/10/23 Javascript
express异步函数异常捕获示例详解
2020/11/30 Javascript
由浅入深讲解python中的yield与generator
2017/04/05 Python
TensorFlow saver指定变量的存取
2018/03/10 Python
python基础教程项目四之新闻聚合
2018/04/02 Python
Python退火算法在高次方程的应用
2018/07/26 Python
pygame游戏之旅 调用按钮实现游戏开始功能
2018/11/21 Python
Python实现的对一个数进行因式分解操作示例
2019/06/27 Python
深入浅析python的第三方库pandas
2020/02/13 Python
Python模块相关知识点小结
2020/03/09 Python
css3 background属性调整增强介绍
2010/12/18 HTML / CSS
跑鞋、网球鞋、网球拍、服装及装备:Holabird Sports
2016/09/19 全球购物
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
Converse匡威法国官网:美国著名帆布鞋品牌
2018/12/05 全球购物
Muziker英国:中欧最大的音乐家商店
2020/02/05 全球购物
软件售后服务承诺书
2014/05/21 职场文书
大学运动会加油稿200字(5篇)
2014/09/27 职场文书
2014年小学德育工作总结
2014/12/05 职场文书
Python+tkinter实现高清图片保存
2022/03/13 Python