php的变量作用域
来源:互联网 发布:qt网络编程账号登录 编辑:程序博客网 时间:2024/05/21 17:37
原文地址:http://wordpress.njustjx.cn/index.php/archives/193
PHP中的每个变量都有一个针对它的作用域,它是指可以在其中访问变量(从而访问它的值)的一个领域。对于初学者来说,变量的作用域是它们所驻留的页面。因此,如果你定义了 $var,页面余下部分就可以访问 $var,但是,其它页面一般不能访问它(除非使用特殊的变量)。
因为包含文件像它们是原始(包含)脚本的一部分那样工作,所以在 include() 那一行之前定义的变量可供包含文件使用。此外,包含文件内定义的变量可供 include() 那一行之后的父(包含)脚本使用。
当使用你自己定义的函数时,所有这些都将变得不那么明显。这些函数具有它们自己的作用域,这意味着在一个函数内使用的变量不能在其外部使用,在一个函数外部定义的变量不能在其内部使用。由于这个原因,函数内部的变量可以具有与其外部的变量相同的名称,但是它们仍然是完全不同的变量,并且具有不同的值。对于大多数初级程序员来说,这是一个使人糊涂的概念。
要改变一个函数内的变量的作用域,可以使用 global 语句。function function_name() {
global $var;
}
$var=20;
function_name(); // Function call.
在这个示例中,函数内部的 $var 现在与函数外部的 $var 相同。这意味着变量 $var 已经具有一个值20,如果在函数内部改变了这个值,外部的 $var 值也会改变。
避开变量作用域的另一个方法是利用超全局变量:$_GET、$_POST、$_REQUEST 等。这些变量在你的函数内是自动可访问的(因此,它们是超全局变量)。也可以添加元素到 $GLOBALS 数组中,使得可以在函数内使用它们。
也就是说,最好不要在函数内使用全局变量。在设计函数时,应该使它们根据需要接受每个值作为参数,并根据需要返回任何值。依靠函数内的全局变量将使得它们更依赖于上下文,因而不太有用。
- PHP变量的作用域
- php的变量作用域
- php变量的作用域
- php的变量作用域
- PHP变量的作用域
- PHP变量的作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- php变量作用域
- PHP变量作用域
- php变量作用域
- PHP变量作用域
- PHP变量作用域
- php变量作用域
- JS去掉空格
- WebService资源汇总列表(二)
- SWT中shell的各种style的介绍
- D3D学习笔记之七---光照效果
- ListCtrl排序
- php的变量作用域
- D3D学习笔记之八---纹理
- 22 Open Source PHP Frameworks To Shorten Your Development Time
- D3D学习笔记之九---纹理过滤方式
- spring與hibernate 對不同數據源的切換
- 消息处理学习
- D3D学习笔记之十---模型的载入
- 【转】函数PlaySound和sndPlaySound的用法
- 利用J2mePolish 2.1 移植J2me程序到Android