在 PHP 中声明全局变量

Subodh Poudel 2023年1月30日 2021年7月8日
  1. 在 PHP 中使用 global 关键字在局部范围内声明全局变量
  2. PHP 中使用 $GLOBALS 超级全局变量在局部范围内使用全局变量
  3. 在 PHP 中使用 define() 函数定义一个常量全局变量
在 PHP 中声明全局变量

我们将介绍一种在 PHP 中使用 global 关键字声明全局变量的方法。此方法将在函数外部声明的变量的全局范围设置为局部范围以使用函数内部的变量。

本文将演示另一种使用 $GLOBALS 超级全局变量在 PHP 中声明全局变量的方法。该方法将使用超级全局变量来访问局部范围内的全局变量。

我们还将演示另一种使用 define() 函数在 PHP 中声明全局变量的方法。这个方法是在 PHP 中声明一个常量全局变量的一种方式。我们不能改变常量的值。

在 PHP 中使用 global 关键字在局部范围内声明全局变量

我们可以使用 global 关键字在 PHP 的局部范围内声明一个全局变量。global 关键字将全局作用域设置为局部作用域的变量。我们可以在函数外定义一个变量。当我们尝试访问函数内部的变量时,变量的全局范围不会让我们。所以我们可以在函数内部使用 global 关键字和变量。然后,我们可以访问函数内部的变量。

例如,创建一个变量 $crypto 并为其分配 Bitcoin。然后,创建一个函数 body()。在函数内部,在 $crypto 变量之前使用 global 关键字。使用 echo 语句打印 $crypto 变量并使用 . 点运算符连接字符串 is a top cryptocurrency.。在函数体之外,调用 body() 函数。

下面的示例将 $crypto 变量的全局范围导入到 body() 函数内的局部范围。因此,我们可以访问函数内部的 $crypto 变量。当我们尝试在不使用 global 关键字的情况下打印变量时,我们将无法这样做,因为变量的局部作用域不存在。查看 PHP 手册 以了解有关范围和 global 关键字的更多信息。

示例代码:

#php 7.x
<?php
$crypto = 'Bitcoin';
function body(){
    global $crypto;
    echo $crypto." is a top cryptocurrency.";
}
body();
?>

输出:

Bitcoin is a top cryptocurrency.

PHP 中使用 $GLOBALS 超级全局变量在局部范围内使用全局变量

我们可以使用 $GLOBALS 超级全局变量来引用全局范围变量。$GLOBALS 变量是一个关联数组,其中包含在全局范围内定义的变量的引用。我们可以将变量写在 $GLOBALS 括号内,以将全局变量引用为 $GLOBALS["name"]。此方法尝试在函数内打印局部变量和全局变量。它使用 $GLOBALS 超级全局变量来引用函数内部全局范围内的变量。

例如,创建一个变量 $var 并分配一个字符串 global scope variable。编写一个函数 body() 并在函数内创建相同的变量 $var 并分配字符串 local scope variable 这次。首先,将在 $GLOBALS 数组中引用它的 $var 变量回显为 $GLOBALS["var"]。在下一行中,使用 echo 语句打印 $var 变量。

下面的示例将 $var 变量打印两次。第一个使用 $GLOBALS["var"] 数组,因此,它打印在函数外部定义的全局变量。第二次显示函数内部的变量。查看 PHP 手册 以了解有关 $GLOBALS 超级全局变量的更多信息。

代码示例:

#php 7.x
<?php
$var = "global scope variable";
function body() {
    $var = "local scope variable";
    echo '$var in global scope: ' . $GLOBALS["var"] . "<br>";
    echo '$var in current scope: ' . $var ;
}
body();
?>

输出:

$var in global scope: global scope variable 
$var in current scope: local scope variable

在 PHP 中使用 define() 函数定义一个常量全局变量

该方法使用 define() 函数在 PHP 中定义一个全局变量。该函数有两个参数。第一个参数是常量名,第二个参数是常量的值。默认情况下,常量不区分大小写。我们可以从脚本的任何地方访问常量。定义常量时不使用 $ 符号。顾名思义,它的价值是不可变的。常量只能保存字符串和数字作为值。

例如,编写一个 define() 函数并将常量的名称指定为 BAND,并将值指定为 Opeth。创建一个函数 bandName() 并使用 echo 语句显示 BAND 常量。在函数外,调用函数 bandName()。该脚本将输出值 Opeth。查看 PHP 手册 以了解有关 define() 函数的更多信息。

示例代码:

# php 7.x
<?php
define('BAND', 'Opeth');
function bandName()
{
    echo BAND;
}
bandName();
?>

输出:

Opeth
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

相关文章 - PHP Variable