> 백엔드 개발 > PHP 문제 > PHP 정적 변수와 변수의 차이점

PHP 정적 변수와 변수의 차이점

(*-*)浩
풀어 주다: 2023-02-24 19:36:01
원래의
3337명이 탐색했습니다.

PHP 정적 변수와 변수의 차이점

일반 변수: 함수가 실행된 후 자동으로 삭제됩니다.

정적 변수: 삭제되지 않고 마지막 값을 유지합니다. #🎜🎜 ##🎜 🎜#

추천 매뉴얼
php 자율 학습 매뉴얼 완성
앞에 정적 추가 정적 변수(정적 변수)를 형성하는 변수입니다. (추천 학습 :
입력부터 마스터까지 PHP 프로그래밍

) 정적 전역 변수와 일반 전역 변수의 차이점: 정적 전역 변수는 한 번만 초기화되어 초기화되지 않습니다. 다른 파일 단위에 사용됨;

static은 public, protected, private의 세 가지 속성 형식과 아무 관련이 없습니다. 이들은 병렬이 아닙니다


public, protected, Private도 static으로 설정할 수 있습니다.

public static $a;
private static $b;
로그인 후 복사

정적 변수는 다음과 같은 특성을 갖습니다.

정적 변수를 정의할 때 함수의 정적 변수 변수를 설정한 후에는 함수가 종료되더라도 이 변수는 사용되지 않습니다. 다음에 이 함수를 호출하면 이전 호출 후 남은 값을 사용합니다.

또한, 함수가 종료되면 변수는 계속 존재하지 않지만, 함수 외부에서는 사용할 수 없습니다.

추천 관련 기사:
1.PHP 정적 변수는 언제 파괴되나요
2.PHP에서 정적 변수와 전역 변수의 차이점은 무엇인가요?
관련 동영상 추천:
1.狗九经(4)_PHP 동영상 튜토리얼
#🎜🎜 #
따라서 정적 변수의 적용 시점은 다음과 같습니다.

함수를 여러 번 호출하여 특정 변수의 값이 필요한 경우 호출 간에 유지하려면 정적 지역 변수 사용을 고려하세요.

위 목적을 달성하기 위해 전역 변수를 사용할 수도 있지만, 전역 변수는 예상치 못한 부작용을 일으키는 경우가 있으므로, 그래도 로컬 정적 변수를 사용하는 것이 좋습니다.

정적 속성의 기본 기능은 일반 속성과 달리 정적 속성이 이전 값을 기억한다는 것입니다. 예:

function a() {
  $a = 1;
  $a += 1;  
  echo $a; 
}  
//然后连续3次调用这个函数测试下
a();
a();
a();
上面代码会输出 2 2 2
 
改成静态属性:
 
function a() {
  static $a = 1;
  $a += 1;  
  echo $a; 
}  
//然后连续3次调用这个函数测试下
a();
a();
a();
로그인 후 복사

위에서는 2 3 4가 출력됩니다. #🎜 🎜#

클래스에 정의된 정적 변수의 경우 간단히 말하면 클래스의 정적 멤버를 인스턴스화 없이 직접 사용할 수 있습니다.

위 내용은 PHP 정적 변수와 변수의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿