php static은 PHP의 키워드입니다. static 키워드를 사용하면 클래스가 로드되는 동안 하나의 복사본만 유지됩니다.
이 기사의 운영 환경: windows7 시스템, PHP7.1 버전, DELL G3 컴퓨터
php static은 무엇을 의미하나요?
PHP의 static 키워드의 역할과 차이점
PHP의 static은 Java와 같은 다른 객체 지향 언어와 다릅니다. 인스턴스화된 객체는 정적 메서드에만 액세스할 수 있으며 정적 멤버에는 액세스할 수 없습니다.
정적 키워드를 사용하면 해당 멤버는 클래스 로드 프로세스 중에 하나의 복사본만 유지됩니다. 정적 변수에 대한 모든 작업은 모든 개체에 영향을 미칩니다.
정적 변수는 PHP 개체 호출에서 인스턴스화할 수 없습니다. , 정적 메소드는 객체에 의해 호출될 수 있습니다
// ----类内部---- // 调用普通成员 this->name; // 调用静态成员 self::name_static; // ----类外部---- // 调用普通成员需要实例化使用 Car c = new Car(); c->name; // 调用静态方法 c::fun() <==> Car::fun() // 调用静态变量 Car::name;
코드 분석:
class Car { private $name; private static $type = "Car"; function __construct($name) { $this->name = $name; echo "Car " . $name . " has created!\n"; } public static function getType() { echo self::$type . "\n"; } public function getName() { echo "Car name is " . $this->name . "\n"; } function __destruct() { echo "Car " . $this->name . " has destory!"; } }
엔티티 클래스는 생성자, 정적 함수, 일반 함수, 소멸자 및 일반 멤버 변수와 정적 멤버 변수를 정의합니다.
테스트에 PHPunit을 사용하세요
class test extends PHPUnit_Framework_TestCase { public function test_car() { $car = new Car("BMW"); $car::getType(); $car->getName(); } }
출력을 얻을 수 있습니다:
Car BMW has created! Car Car name is BMW Car BMW has destory!
[권장 학습: PHP 비디오 튜토리얼]
위 내용은 php static은 무슨 뜻인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!