config.php文件:
复制代码 代码如下:
$db_name="test";
$db_username="root";
global $db_password;
?>
数据库操作类(调用配置文件)db.fun.php:
复制代码 代码如下:
require("config/config.php");
class db{
function fun(){
global $db_username,$db_password;
echo "数据库用户名:".$db_username."
";
echo "数据库密码:".$db_password."
";
}
}
?>
应用文件test.php:
复制代码 代码如下:
require("include/db.fun.php");
$a= new db();
$a->fun();
?>
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 没有限制。
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn