php学习之 认清变量的作用范围
2015-01-24信息快讯网
⚑局部变量与全局变量
变量的存在有着它的生命周期,我们可以让它存在于一个小的函数内部,也可让它存在于整个程序当中。对于一般情况下声明的变量,我们称之为局部变量,只能在当前程序段中存在,而使用$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新建文件自动编号的思路与实现
php开启安全模式后禁用的函数集合
php设计模式 Adapter(适配器模式)
php设计模式 Builder(建造者模式)
php设计模式 DAO(数据访问对象模式)
php基础学习之变量的使用
php学习之变量的使用
php中全局变量global的使用演示代码
php的list()的一步操作给一组变量进行赋值的使用
用PHP的超级变量$_POST获取HTML表单(HTML Form) 数据
php 获取全局变量的代码
PHP stream_context_create()作用和用法分析
PHP 作用域解析运算符(::)
PHP extract 将数组拆分成多个变量的函数
php中static静态变量的使用方法详解
php 静态变量与自定义常量的使用方法
PHP 变量的定义方法
php cout<<的一点看法
php addslashes和mysql_real_escape_string
PHPMailer 中文使用说明小结
关于php fread()使用技巧
php smarty模版引擎中变量操作符及使用方法
PHP Session变量不能传送到下一页的解决方法
php 接口类与抽象类的实际作用
php 静态变量的初始化
PHP 判断变量类型实现代码
PHP字符串 ==比较运算符的副作用
PHP 配置文件中open_basedir选项作用
php cookie 作用范围C不要在当前页面使用你的cookie
PHP中函数内引用全局变量的方法
PHP中的extract的作用分析