PHP :: 이중콜론(더블콜론) 객체에서 사용방법
이중콜론은 상수와 static 변수인 경우 사용이 가능 하다 .
아래 예제를 보면 이중콜론(더블콜론) 사용에 대한 이해가 쉽습니다.
단 주의할것은 이중콜론 보다는 $this 부분에서 어디서 사용 하느냐에 따라 달라지는 경우가 있습니다.
class ParentClass {
const T1 = '상수 - parent' . PHP_EOL;
function test() {
// 현재 이것을 의미하기 때문에 현재 객체가 된다.
// 하위에서 생성한 객체가 아닌 현재 속해 있는 이 객체
self::who();
// 객체 생성을 ChildClass 으로 하면 this는 생성한 클래스가 된다
// 그렇기 때문체 출력은 'child'가 된다.
$this->who();
}
function who() {
echo '클래스명: ' . __CLASS__ . ' 메소드명: ' . __METHOD__ . ' 값: parent' . PHP_EOL;
}
}
class ChildClass extends ParentClass {
const T2 = 'child' . PHP_EOL;
function who() {
echo 'child' . PHP_EOL;
// 상위클래스에 있는 상수 또는 static 호출하는 방법
echo ParentClass::T1;
echo parent::T1;
echo ParentClass::who();
echo parent::who();
}
}
$obj = new ChildClass();
$obj->test();
exit;
* 참고할 것
- 클래스에서 변수,상수 사용방법과 상위(부모)의 상수 사용방법 > PHP
- 모던php 사용시 흔하게 볼 수 있는 한가지 static