우리는 변수가 실제로 정보를 저장하는 데 사용하는 컨테이너와 동일하다는 것을 알고 있습니다. 명명 규칙에 대해서는 모두가 비교적 명확하다고 생각하므로 여기서는 자세히 설명하지 않겠습니다. 여기서는 주로 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['y']=$GLOBALS['x']+$GLOBALS['y']; } myTest(); echo $y; ?>
위 내용은 PHP에서 변수 전역 변수를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!