PHP变量学习之什么是全局变量?怎么在函数中调用

青灯夜游
Freigeben: 2023-03-11 22:54:02
Original
4581 人浏览过

在上一篇文章《PHP如何动态设置变量的名称》中,我们介绍了PHP中的可变变量,了解了动态设置变量名称的方法。这次我们来看看在函数内部调用全局变量的方法,有需要的可以参考参考。

在介绍函数内部调用全局变量方法之前,我们来了解一下变量作用域和全局变量

变量作用域,简单来说就是变量可以被使用的范围,必须在其有效范围内使用,如果超出有效范围,变量就会失去其意义。

按作用域分,变量可以分为局部变量和全局变量。

局部变量是指声明在函数内部的变量,只能在函数内使用;而全局变量是指声明在函数外的变量,其作用域是当前源码的任何地方,但是在函数内部是不可用的。

$b = '.$b;
	echo '
$c = '.$c; } demo(); ?>
Nach dem Login kopieren

分析:在函数demo()中想要输出全局变量$a、$b、$c,会发现不输出且报错:

1.png

但有时我们就必须要在函数内使用全局变量,这要怎么办?

PHP提供了两种解决方法: global关键字和$GLOBALS超全局变量。

我们看看下面的一个示例:

$b = '.$b;
    echo '
$c = '.$c; } demo(); ?>
Nach dem Login kopieren

看看输出结果为:

$a = 1
$b = 2
$c = 3
Nach dem Login kopieren
Nach dem Login kopieren

分析:

global关键字的作用是:导入全局变量,利用global 变量1, 变量2, ...的形式把全局变量1, 变量2...导入到一个函数的局部范围内,就可以在函数内部使用在函数外部定义的全局变量了。

再来看一个例子:

$b = '.$GLOBALS['b'];
    echo '
$c = '.$GLOBALS['c']; } demo(); ?>
Nach dem Login kopieren

输出结果为:

$a = 1
$b = 2
$c = 3
Nach dem Login kopieren
Nach dem Login kopieren

分析:

$GLOBALS是一种预定义变量(又叫超全局变量),是包含所有变量的全局组合数组,变量的名称就是数组的键,可以使用$GLOBALS['变量名']的形式来访问指定全局变量。只要是出现过的全局变量,就可以通过$GLOBALS这个数组取得。

global和$GLOBALS的区别

  • global只能在函数内部使用,不能在函数外部使用;而$GLOBALS 可以在程序的任意位置(函数内外)都能使用。

  • 在函数内部销毁一个使用 global 关键字修饰的变量时,函数外部的变量不受影响;而$GLOBALS是有影响的。

    原因:

    使用 global 关键字修饰的$var变量时,是对函数外部同名变量的引用,内外是两个互不影响的变量;

    而 $GLOBALS['var'] 指的就是函数外部变量本身,是一个变量。

好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

最后给大家推荐一个PHP数组的免费视频教程:从0开始进入PHP的世界,快来学习吧!

以上是PHP变量学习之什么是全局变量?怎么在函数中调用的详细内容。更多信息请关注PHP中文网其他相关文章!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!