- $db_name="test";
- $db_username="root";
- global $db_password;
- ?>
2,数据库操作类(调用配置文件)db.fun.php:
- require("config/config.php");
- class db{
- function fun(){
- global $db_username,$db_password;
- echo "数据库用户名:".$db_username."
"; - echo "数据库密码:".$db_password."
"; - }
- }
- ?>
3,应用文件test.php:
- require("include/db.fun.php");
- $a= new db();
- $a->fun();
- ?>
4,global关键字:
- $a = 1; /* global scope */
- function Test()
- {
- echo $a; /* reference to local scope variable */
- }
- Test();
- ?>
这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a,而且在这个范围内,它并没有被赋值。
PHP 的全局变量和 C 语言有一点点不同,在 C 语言中,全局变量在函数中自动生效,除非被局部变量覆盖。
这可能引起一些问题,有些人可能改变一个全局变量。PHP 中全局变量在函数中使用时必须申明为全局。
- $a = 1;
- $b = 2;
- function Sum()
- {
- global $a, $b;
- $b = $a + $b;
- }
- Sum();
- echo $b;
- ?>
-
以上脚本的输出将是“3”。
在函数中申明了全局变量 $a 和 $b,任何变量的所有引用变量都会指向到全局变量。
对于一个函数能够申明的全局变量的最大个数,PHP 没有限制。 |