首页 期权学习期权知识正文

PHP全局变量和局部变量

xiaojiucai 期权知识 2020-08-18 525 0

全局变量和局部变量(global关键字)

1、定义在函数外部的就是全局变量,它的作用域从定义处一直到文件结尾。

2、函数内定义的变量就是局部变量,它的作用域为函数定义范围内。

3、函数之间存在作用域互不影响。

4、函数内访问全局变量需要 global 关键字或者使用 $GLOBALS[index] 数组

在 php 中函数是有独立的作用域,所以局部变量会覆盖全局变量,即使局部变量中并定义没有全局变量相同的变量,也会被覆盖。

<?php
function dd(){
//	global声明全局变量
	global $a,$b;
	$a = $a+10;
	$b= $b+10;
}
$a =1;
$b=1;
echo '调用函数前<br>';
echo 'a='.$a.'<br>';
echo 'b='.$b.'<br>';

echo '调用函数后<br>';
dd();
echo 'a='.$a.'<br>';
echo 'b='.$b.'<br>';
?>

<?php
function dd(){
//	$globals 声明数组全局变量
//@符号 阻止警告输出。
//有些函数,在遇到入参不正确时,会提示警告,但程序也可以正常运行。
//其实只要把警告去掉就可以,所以就有@这个符号。
	@$globals['c'] = $GLOBALS['a']+$GLOBALS['b'];
	
}
$c=0;
$a=1;
$b=2;
dd();//调用函数
echo "\$a=".$a.",\$b=".$b.",\$c=".$c;
?>

原文链接:https://www.qiquanji.com/post/7150.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。