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

本文详细介绍了PHP中全局变量与局部变量的概念及其作用域范围,并演示了如何在函数内部访问和修改全局变量的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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

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

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

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

<?php
$a=5;//全局变量
$b=3;//全局变量
function t()
{
  $c;//局部变量
  $c=$a-$b; echo $c; // 输出 0 } t(); ?>

要想在函数中直接使用全局变量可以通过 global 关键字声明或者通过 php 中自定义的 $GLOBALS数组获取,PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。:

<?php
$a=5;//全局变量
$b=3;//全局变量
function t1()
{  
    global $a,$b;
    echo $a-$b;  // 输出 2
}
t1();

echo PHP_EOL;

function t2()
{
    echo $GLOBALS['a']-$GLOBALS['b'];  // 输出 2
}
t2();
?>

转载于:https://www.cnblogs.com/alexguoyihao/p/9066464.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值