Posted in PHP onAugust 07, 2009
<?php $a = 1 ; include 'b.inc' ; ?>
这里变量 $a 将会在包含文件 b.inc 中生效。但是,在用户自定义函数中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内。
<?php $a = 1 ; /* global scope */ function Test () { echo $a ; /* reference to local scope variable */ } Test (); ?>
这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a ,而且在这个范围内,它并没有被赋值。你可能注意到 PHP 的全局变量和 C 语言有一点点不同
PHP 中全局变量在函数中使用时必须申明为全局(global关键字)
<?php $a = 1 ; $b = 2 ; function Sum () { global $a , $b ; $b = $a + $b ; } Sum (); echo $b ; ?>
以上脚本的输出将是“3”。
php 全局变量范围分析
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@