>  기사  >  백엔드 개발  >  편집자는 PHP의 변수에 $GLOBALS를 가르쳐줄 것입니다.

편집자는 PHP의 변수에 $GLOBALS를 가르쳐줄 것입니다.

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-08-02 11:42:431548검색

이번에는 PHP의 구분 기호에 대해 더 이상 배우지 않습니다. 이 기사에서는 슈퍼 전역 변수를 소개하기 시작합니다. 필요한 친구들이 이를 참조할 수 있기를 바랍니다.

하지만 $GLOBALS를 소개하기 전에 먼저 수퍼 전역 변수가 무엇인지 살펴보겠습니다. $GLOBALS之前让我们先看看什么叫超级全局变量

全局变量是编程术语之一,它来源于变量的划分。变量分为局部变量和全局变量,局部变量也可以称为内部变量。由对象或函数创建的变量通常是局部变量,只能在内部引用,而不能由其他对象或函数引用。

全局变量可以由对象函数或此程序中的任何位置创建。此程序的所有对象或函数都可以引用全局变量。当一个局部变量被其他对象引用时,它将是一个空值。全局变量不会发生这种情况。

全局变量是在函数外部定义的变量。不能直接在函数中使用。因为它的作用域不会进入函数内部。而PHP预定义的超级全局变量,在脚本的所有范围内都可用。可以在函数和类中使用它,而无需特殊说明。

知道超级全局变量是什么之后,我们开始正题,去看看$GLOBALS。

首先看看一个小例子。

?php 
$x = 75;
$y = 25; 

function addition()
{
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}

addition();
echo $z;
?>

结果是

100

我们观察一下例子,这个z的结果就是x+y,但是他没有想像平常的四则运算那么写,而是“$GLOBALS['x'] + $GLOBALS['y']”,这代表什么意思呢?

其实$GLOBALS是包含所有变量的全局组合数组,变量的名称就是数组的键,并且我们可以在PHP脚本的所有范围内访问它。只要是出现过的全局变量,就可以通过$GLOBALS这个数组取得。

PHP生命周期中,定义在函数体外部的所谓全局变量,函数内部是不能直接获得的。

global和$GLOBALS的区别在于:

global在函数中生成一个别名变量,该变量指向函数的外部变量,而不是函数的实际外部变量。

$GLOBALS[]调用是一个外部变量,函数的内部和外部总是一致的。

对于类中的成员变量,必须以$this->

전역 변수는 프로그래밍 용어 중 하나로 변수의 분할에서 유래합니다. 변수는 지역변수(Local Variable)와 전역변수(Global Variable)로 나누어진다. 객체나 함수에 의해 생성된 변수는 일반적으로 지역 변수이며 내부적으로만 참조될 수 있으며 다른 객체나 함수에서는 참조할 수 없습니다.

전역 변수는 객체 함수 또는 이 프로그램의 어느 곳에서나 생성될 수 있습니다. 이 프로그램의 모든 개체나 함수는 전역 변수를 참조할 수 있습니다. 지역 변수가 다른 개체에서 참조되면 null 값을 갖게 됩니다. 전역 변수에서는 이런 일이 발생하지 않습니다.

전역 변수는 함수 외부에서 정의된 변수입니다. 함수에서 직접 사용할 수 없습니다. 그 범위가 함수에 들어 가지 않기 때문입니다. PHP의 사전 정의된 슈퍼 전역 변수는 스크립트의 모든 범위에서 사용할 수 있습니다. 특별한 지시 없이 함수나 클래스에서 사용할 수 있습니다.

슈퍼 전역 변수가 무엇인지 알고 나면 본격적으로 $GLOBALS를 살펴보겠습니다. 🎜🎜먼저 작은 예를 살펴보세요. 🎜rrreee🎜결과는 🎜rrreee🎜예제를 살펴보겠습니다. z의 결과는 x+y인데 일반적인 사칙연산처럼 작성할 생각은 없었지만 "$GLOBALS['x '] + $GLOBALS[ 'y']", 이것은 무엇을 의미합니까? 🎜🎜사실 $GLOBALS는 모든 변수를 포함하는 전역 결합 배열입니다. 변수 이름은 배열의 키이며 PHP 스크립트의 모든 범위에서 액세스할 수 있습니다. 등장한 전역 변수라면 $GLOBALS 배열을 통해 얻을 수 있다. 🎜🎜PHP 라이프 사이클에서 함수 본문 외부에 정의된 소위 전역 변수는 함수 내부에서 직접 얻을 수 없습니다. 🎜🎜global과 $GLOBALS의 차이점은 다음과 같습니다. 🎜🎜global은 함수의 실제 외부 변수가 아닌 함수의 외부 변수를 가리키는 함수에 별칭 변수를 생성합니다. 🎜🎜$GLOBALS[] 호출은 외부 변수이며 함수 내부와 외부는 항상 일관됩니다. 🎜🎜클래스의 멤버 변수의 경우 클래스의 함수는 $GLOBALS 대신 $this->로 액세스해야 합니다. 🎜🎜global은 전역 변수를 정의하는 데 사용되지만 이 전역 변수는 그렇지 않습니다. 적용 전체 웹 사이트에 적용되지만 포함되거나 필요한 모든 파일을 포함하여 현재 페이지에 적용됩니다. 🎜🎜그게 다입니다. 더 알고 싶다면 여기를 클릭하세요. → →🎜php 비디오 튜토리얼🎜🎜

위 내용은 편집자는 PHP의 변수에 $GLOBALS를 가르쳐줄 것입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.