PHP中如何在函数内部使用外部变量?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1214个文字,预计阅读时间需要5分钟。
方法:1、利用global关键字,在方法内使用global+$外部变量名;语句引入外部变量;2、使用$GLOBALS变量,在方法内直接使用$$GLOBALS[a]语句引用外部变量;3、利用值传递,将变量作为参数传递给方法。
方法:1、利用global关键字,在方法内用“global $外部变量名;”语句导入外部变量即可;2、利用“$GLOBALS”变量,在方法内直接用“$GLOBALS['a']”语句引用外部变量即可;3、利用值传递,将外部变量用参数传递进去。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
今天我用纯原生的PHP写了一个方法,想调用外部全局变量的时候,结果:要么是报错了,要么是没有任何输出?
下面我们来聊聊原因和解决方法:
变量范围
在用户自定义方法(函数)中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内。例如:
<?php $a = 1; /* global scope */ function Test() { echo $a; /* reference to local scope variable */ } Test(); ?>
这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a,而且在这个范围内,它并没有被赋值。
你可能注意到 PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能不小心就改变了一个全局变量。PHP 中全局变量在函数中使用时必须声明为 global。
本文共计1214个文字,预计阅读时间需要5分钟。
方法:1、利用global关键字,在方法内使用global+$外部变量名;语句引入外部变量;2、使用$GLOBALS变量,在方法内直接使用$$GLOBALS[a]语句引用外部变量;3、利用值传递,将变量作为参数传递给方法。
方法:1、利用global关键字,在方法内用“global $外部变量名;”语句导入外部变量即可;2、利用“$GLOBALS”变量,在方法内直接用“$GLOBALS['a']”语句引用外部变量即可;3、利用值传递,将外部变量用参数传递进去。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
今天我用纯原生的PHP写了一个方法,想调用外部全局变量的时候,结果:要么是报错了,要么是没有任何输出?
下面我们来聊聊原因和解决方法:
变量范围
在用户自定义方法(函数)中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内。例如:
<?php $a = 1; /* global scope */ function Test() { echo $a; /* reference to local scope variable */ } Test(); ?>
这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a,而且在这个范围内,它并没有被赋值。
你可能注意到 PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖。这可能引起一些问题,有些人可能不小心就改变了一个全局变量。PHP 中全局变量在函数中使用时必须声明为 global。

