1:PHP Global变量的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件
总结:在函数体内定义的PHP Global变量,函数体外可以使用,在函数体外定义的global变量不能在函数体内使用,
<ol class="dp-xml"> <li class="alt"><span><span>$glpbal $a; </span></span></li> <li> <span>$</span><span class="attribute">a</span><span>=</span><span class="attribute-value">123</span><span>; </span> </li> <li class="alt"><span> </span></li> <li><span>function f() </span></li> <li class="alt"><span>{ </span></li> <li><span>echo $a; //错误, </span></li> <li class="alt"><span>} </span></li> </ol>
再看看下面一例
<ol class="dp-xml"> <li class="alt"><span><span>function f() </span></span></li> <li><span>{ </span></li> <li class="alt"><span>global $a; </span></li> <li> <span>$</span><span class="attribute">a</span><span>=</span><span class="attribute-value">123</span><span>; </span> </li> <li class="alt"><span>} </span></li> <li><span> </span></li> <li class="alt"><span>f(); </span></li> <li><span>echo $a; //正确,可以使用 </span></li> </ol>
2:PHP Global变量问题解析:
question:我在config.inc.php中定义了一些变量($a),在别的文件中函数外部 include("config.inc.php"),函数内部需要使用这些变量$a,如果没有声明的话,echo $a是打印不出来任何东西的。因此声明global $a,但是有很多函数和很多变量,总不能不断重复的这样声明吧?有什么好的解决办法,请指点。
answer1:先在config.inc.php里定义常量:define(常量名,常量值),再在其他需要用到的地方require 'config.inc.php',然后就能在这个文件里直接使用这个常量了。
answer2:我也有个办法,就是定义数组,如$x[a],$x,那样就只要声明global $x一个了。
answer3:我试了你的这个方法,不行啊。
answer4:改你的php.ini文件。
设置PHP Global变量 为 on