>백엔드 개발 >PHP 문제 >PHP에서 변수 전역 변수를 만드는 방법

PHP에서 변수 전역 변수를 만드는 방법

silencement
silencement원래의
2019-09-26 09:34:202871검색

PHP에서 변수 전역 변수를 만드는 방법

우리는 변수가 실제로 정보를 저장하는 데 사용하는 컨테이너와 동일하다는 것을 알고 있습니다. 명명 규칙에 대해서는 모두가 비교적 명확하다고 생각하므로 여기서는 자세히 설명하지 않겠습니다. 여기서는 주로 PHP 변수의 두 가지 범위인 전역 변수와 지역 변수를 살펴봅니다.

이 두 가지 가변 범위를 보면 전역 및 정적이라는 두 단어가 떠오를 것이라고 믿습니다. 네, 그 두 단어입니다.

우리는 모든 함수 외부에서 정의된 변수가 전역 범위를 갖는다는 것을 알고 있습니다. 함수 외에도 전역 변수는 스크립트의 모든 부분에서 액세스할 수 있습니다. 함수의 전역 변수에 액세스하려면 global 키워드를 사용해야 합니다. 그러나 PHP 함수 내에서 선언된 변수는 지역 변수이므로 함수 내에서만 접근할 수 있습니다. 다음으로 예를 살펴보겠습니다.

<?php
$x=5; // 全局变量

function myTest()
{
    $y=10; // 局部变量
    echo "<p>测试函数内变量:<p>";
    echo "变量 x 为: $x";
    echo "<br>";
    echo "变量 y 为: $y";
}

myTest();

echo "<p>测试函数外变量:<p>";
echo "变量 x 为: $x";
echo "<br>";
echo "变量 y 为: $y";
?>

위 예에서 myTest() 함수는 $x 및 $y 변수를 정의합니다. $x 변수는 함수 외부에서 선언되었으므로 전역 변수이고, $y 변수는 함수 내부에서 선언되므로 지역 변수입니다.

myTest() 함수를 호출하고 두 변수의 값을 출력하면 함수는 로컬 변수 $y의 값을 출력하지만 $x 변수는 다음과 같기 때문에 $x의 값을 출력할 수 없습니다. 함수 외부에서 정의되어 함수 내에서 사용할 수 없으므로, 함수의 전역 변수에 접근하려면 global 키워드를 사용해야 합니다.

그런 다음 myTest() 함수 외부에 두 변수의 값을 출력합니다. 함수는 모든 로컬 변수 $x의 값을 출력하지만 $y 변수가 정의되어 있으므로 $y의 값을 출력할 수 없습니다. 함수이며 지역 변수입니다.

이를 통해 서로 다른 함수에서 동일한 변수 이름을 사용할 수 있다는 것을 알 수 있습니다. 왜냐하면 이러한 함수에 정의된 변수 이름은 지역 변수이고 해당 함수 내에서만 작동하기 때문입니다. 이것은 약간의 트릭으로 간주될 수 있습니다.

더 이상 고민하지 말고 먼저 글로벌 키워드를 살펴보겠습니다. global 키워드는 함수 내의 전역 변수에 액세스하는 데 사용됩니다. 함수 내에서 함수 외부에 정의된 전역 변수를 호출하려면 함수의 변수 앞에 전역 키워드를 추가해야 합니다. 예를 살펴보겠습니다.

<?php
$x=5;
$y=10;
function myTest()
{
    global $x,$y;
    $y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>

PHP는 모든 전역 변수를 $GLOBALS[index]라는 파일에 저장합니다. 배열에서. index는 변수의 이름을 담고 있습니다. 이 배열은 함수 내에서 액세스하거나 전역 변수를 업데이트하는 데 직접 사용할 수 있습니다. 따라서 위의 예는 다음과 같이 작성할 수 있습니다.

<?php
$x=5;
$y=10;

function myTest()
{
    $GLOBALS[&#39;y&#39;]=$GLOBALS[&#39;x&#39;]+$GLOBALS[&#39;y&#39;];
}

myTest();
echo $y;
?>

위 내용은 PHP에서 변수 전역 변수를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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