>  기사  >  백엔드 개발  >  PHP의 변수 범위와 슈퍼전역 변수 이해

PHP의 변수 범위와 슈퍼전역 변수 이해

WBOY
WBOY원래의
2023-05-12 08:34:351385검색

PHP를 배우고 사용하는 과정에서 변수 범위와 초전역 변수는 두 가지 매우 중요한 개념입니다. 이를 완전히 이해해야만 코드의 기능을 실현하기 위해 더 잘 활용할 수 있습니다.

먼저 변수 범위에 대해 살펴보겠습니다. PHP에서 변수 범위에는 주로 전역 변수와 지역 변수가 포함됩니다. 전역 변수는 함수 외부에서 선언된 변수를 말하며 함수 내부와 외부 모두에서 사용할 수 있습니다. 지역변수는 함수 내부에서 선언된 변수를 말하며, 함수 내부에서만 사용할 수 있습니다.

함수 내에서 전역 변수를 사용하려면 함수 내에서 전역 키워드를 사용하여 선언해야 합니다. 예:

$x = 5; // 全局变量

function myTest() {
    global $x;
    echo $x;
}
myTest(); // 输出:5

global 키워드는 전역 변수에 액세스하는 데만 사용할 수 있지만 함수 내에서 전역 변수를 생성할 수는 없다는 점에 유의해야 합니다.

global 키워드 외에도 PHP는 $GLOBALS라는 또 다른 키워드를 제공합니다. $GLOBALS는 슈퍼전역 변수라고 하며 함수 내부와 외부 어디에서나 사용할 수 있습니다. $GLOBALS는 모든 전역 변수를 포함하는 배열입니다. 변수 이름 앞에 $global을 추가하면 이 배열의 요소에 액세스할 수 있습니다. 예:

$x = 5; // 全局变量

function myTest() {
    echo $GLOBALS["x"];
}
myTest(); // 输出:5

위 코드에서 $GLOBALS["x"]와 $x는 동일합니다.

$GLOBALS 외에도 PHP는 여러 다른 초전역 변수를 제공하며, 가장 일반적으로 사용되는 변수는 $_POST, $_GET 및 $_REQUEST입니다. 이는 HTTP POST 및 GET 메소드와 모든 HTTP 요청 변수를 각각 포함하는 배열을 처리하는 데 사용됩니다. 예:

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    Name: <input type="text" name="name">
    <input type="submit">
</form>
<?php
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        // 处理form提交的数据
        $name = $_POST['name'];
        echo $name;
    }
?>

위 코드에서 첫 번째 양식은 $_SERVER['PHP_SELF']를 사용하여 현재 페이지의 주소를 나타내는 데이터를 현재 페이지에 제출합니다. 요청 방법이 POST인지 페이지에서 확인하고 $_POST 배열에서 'name' 속성 값을 가져와 출력합니다.

슈퍼 전역 변수 $_SERVER, $_SESSION 및 $_COOKIE도 일반적으로 사용되는 변수라는 점에 유의해야 합니다. 서버 관련 정보에 접근하고, 사용자 관련 정보를 저장하며, 클라이언트 쿠키 정보에 접근하는 데 사용됩니다.

간단히 말하면, PHP에서 변수 범위와 슈퍼전역 변수를 이해하는 것은 매우 중요합니다. 변수를 보다 유연하고 편리하게 사용할 수 있게 하고, 다양한 편리한 기능을 제공하기 때문입니다.

위 내용은 PHP의 변수 범위와 슈퍼전역 변수 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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