static 정의

2022. 3. 4. 12:34PHP

static이란

클래스를 정의할 때 static 키워드를 사용한 프로퍼티와 메소드는 해당 클래스의 인스턴스를 생성하지 않아도 접근할 수 있게 됩니다. 이러한 프로퍼티와 메소드를 정적 멤버(static member)라고 합니다.

 

코트 예시

<?php
    class A
    {
        public static $message = 'Hello, werld';

        public static function foo()
        {
            return static::who();
        }
        public static function who()
        {
            var_dump(__CLASS__);
        }
    }

    $a = new A();
    $a->foo(); // A 출력
    A::who(); // A 출력
    $a::who(); // A 출력
    A->who(); // 오류
?>

 

정리

기존 클래스 밖에서 해당하는 변수나 함수에 접근하기 위해서는 인스턴스를 생성해서 접근을 해야 했지만

static은 바로 접근이 가능합니다. 접근을 할 경우에는 클래스명::접근하고자하는 변수나 함수로 작성을 하면 됩니다.

'PHP' 카테고리의 다른 글

라라벨 가바지 컬렉션 처리  (0) 2023.03.17
Eloquent ORM 이란  (0) 2022.12.14
접근제한자 public, private, protected 정의  (0) 2022.03.04
PHP 비트 연산자  (0) 2022.03.02
객체지향 5원칙(SOLID) - 리스코프 치환 원칙  (0) 2022.02.17