本文目录一览:
PHP中global 什么是什么功能?
在php中,如果在函数中使用全局变量,php会认为这个变量没有定义。如果我们需要在函数内部使用这个全局变量,这时我们就需要在函数内部,这个全局变量前加关键字global
。
<?php
$str = "string";
function test()
{
if (isset($str)) {
echo "the string is defined";
} else {
echo "the string is undefined";
}
}
test();
?>
这是在浏览器中的运行结果:
this string is undefined
<?php
$str = "string";
function test()
{
global $str; // 上面的test函数中没有这句话
if (isset($str)) {
echo "the string is defined";
} else {
echo "the string is undefined";
}
}
test();
?>
浏览器中的运行结果:
this string is defined
PHP Global变量定义当前页面的全局变量实现探讨
PHP Global变量在实际应用中会发现许多问题需要我们不断的去完善处理。我们在这篇文章中就针对PHP Global变量出现的问题给出了一些具体的解决办法。
- PHP Global变量的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括
include
或require
的所有文件。
$a = 123;
function aa()
{
global $a; // 如果不把$a定义为global变量,函数体内是不能访问$a的
echo $a;
}
aa();
总结:在函数体内定义的PHP Global变量,函数体外可以使用,在函数体外定义的global变量不能在函数体内使用。
$glpbal $a;
$a = 123;
function f()
{
echo $a; // 错误
}
再看看下面一例:
function f()
{
global $a;
$a = 123;
}
f();
echo $a; // 正确,可以使用
- 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[b]
,那样就只要声明global $x
一个了。 answer3:我试了你的这个方法,不行啊。 answer4:改你的php.ini
文件。 设置PHP Global变量为on
。
php、global的用法为?
<?php
$var = 100;
function fun1()
{
echo($var);
}
function fun2()
{
global $var;
echo($var);
}
?>
你尝试分别调用fun1
和fun2
就知道了,fun1
中因为没有使用global
,所以无法使用在外部定义的$var
的值,所以输出的是一个空值,而fun2
声明了global
,即把$var
视为一个全局变量来调用,那么fun2
中就可以获得$var
的值,那么输出的是“100”。
至于你给的第一段代码,这个是无效的,global
只在函数或者类方法内部可用,在外部使用则不会有任何效果,PHP依然把它当做一个普通变量来使用。
还有一种进阶的用法:
<?php
function fun()
{
global $var;
$var = 100;
}
fun();
echo($var);
?>
将会输出100
,这里,$var
只在fun
中使用,但是因为使用了global
定义为了全局变量,因此在函数外部也可以使用。灵活使用一下,其实还有更多用法。不过全局变量还是尽可能少用,会让你的代码混乱不堪。
PHP中global 什么是什么功能
你好,php中global
的功能是定义一个全局变量,使得定义在函数外的变量在函数内都可以访问,当然,也包括任何地方。