php学习之 认清变量的作用范围


Posted in PHP onJanuary 26, 2010

任务2:认清变量的作用范围

⚑局部变量与全局变量

变量的存在有着它的生命周期,我们可以让它存在于一个小的函数内部,也可让它存在于整个程序当中。对于一般情况下声明的变量,我们称之为局部变量,只能在当前程序段中存在,而使用$globals声明出来的变量则是在当前页面整个程序当中都会有效。

例:

<?php 
$a=1; 
$b=2; 
function sum() 
{$a; 
$b; 
$b=$a+$b; 
} 
sum(); 
echo$b; 
?>

在这段程序当中,
第2至3行,我们建立了两个变量a和b并分别给其赋值为1和2。
第3行至第7行,我们定义了一个自加的函数sum(),其作用是让sum内部的变量a和b进行相加,并将加得的值赋给b。
第8行,调用sum函数。
第9行,用echo将b的值输出。
可能有人会认为此时在网页上输出的值一定是3,但是运行后你会发现,值还是为2,也就是b原先的值。这就是局部变量的原因造成的,在第2至3行当中声明的变量无法在sum()函数中使用,也就是说,sum函数中使用的a和b和第2至3行中a和b只是名字相同,但两者之间毫无关系。所以,在最终输出的b也就是第3行b的值了。

但如果,我们将程序修改下面的样式:

<?php 
$a=1; 
$b=2; 
function sum() 
{ 
global $a,$b; 
$b=$a+$b; 
} 
sum(); 
echo $b; 
?>

我们发现,在sum函数中,我们给变量a和b加上了一个global修饰符,这个时候,a和b就和函数外的a和b建立上了关系,它们就是同一个变量了。因此,这个程序在运行的时候,其结果就为3了。因此,我们在声明全局变量时,只需在局部使用它们时(本例中是在函数sum中),给它们加上一个修饰符global,它们就可以继承外部的值,也就不再是局部变量了。
PHP 相关文章推荐
关于文本留言本的分页代码
Oct 09 PHP
php.ini中date.timezone设置分析
Jul 29 PHP
php开发文档 会员收费1期
Aug 14 PHP
用PHP编写和读取XML的几种方式
Jan 12 PHP
根据ip调用新浪api获取城市名并转成拼音
Mar 07 PHP
php中实现精确设置session过期时间的方法
Jul 17 PHP
CentOS安装php v8js教程
Feb 26 PHP
PHP使用curl模拟post上传及接收文件的方法
Mar 04 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
PHP构造二叉树算法示例
Jun 21 PHP
php格式文件打开的四种方法
Feb 24 PHP
PHP+redis实现的悲观锁机制示例
Jun 12 PHP
PHP 变量的定义方法
Jan 26 #PHP
php cout&amp;lt;&amp;lt;的一点看法
Jan 24 #PHP
php addslashes和mysql_real_escape_string
Jan 24 #PHP
PHPMailer 中文使用说明小结
Jan 22 #PHP
关于php fread()使用技巧
Jan 22 #PHP
PHP 时间转换Unix时间戳代码
Jan 22 #PHP
PHP 实用代码收集
Jan 22 #PHP
You might like
PHP目录函数实现创建、读取目录教程实例
2011/01/13 PHP
PHP+redis实现添加处理投票的方法
2015/11/14 PHP
PHP全局变量与超级全局变量区别分析
2016/04/01 PHP
PHP编程实现的TCP服务端和客户端功能示例
2018/04/13 PHP
php实现JWT验证的实例教程
2020/11/26 PHP
jquery.ui.draggable中文文档
2009/11/24 Javascript
js+html+css实现鼠标移动div实例
2013/01/30 Javascript
jquery获得页面元素的坐标值实现思路及代码
2013/04/15 Javascript
javascript代码运行不出来执行错误的可能情况整理
2013/10/18 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
JQuery节点元素属性操作方法
2015/06/11 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
2016/06/12 Javascript
Bootstrap CSS布局之表格
2016/12/17 Javascript
简单实现js倒计时功能
2017/02/13 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
vue 返回上一页,页面样式错乱的解决
2019/11/14 Javascript
Vue单文件组件开发实现过程详解
2020/07/30 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
python中实现指定时间调用函数示例代码
2017/09/08 Python
python对html过滤处理的方法
2018/10/21 Python
python3 面向对象__类的内置属性与方法的实例代码
2018/11/09 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
Python Gluon参数和模块命名操作教程
2019/12/18 Python
200行python代码实现贪吃蛇游戏
2020/04/24 Python
keras 回调函数Callbacks 断点ModelCheckpoint教程
2020/06/18 Python
canvas进阶之如何画出平滑的曲线
2018/10/15 HTML / CSS
HTML5 weui使用笔记
2019/11/21 HTML / CSS
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
综合实践活动方案
2014/02/14 职场文书
初中生评语大全
2014/04/24 职场文书
市级绿色学校申报材料
2014/08/25 职场文书
房产协议书范本
2014/10/18 职场文书
2016年大学迎新晚会工作总结
2015/10/15 职场文书
详解JS ES6编码规范
2021/05/07 Javascript
Python中tqdm的使用和例子
2022/09/23 Python