본문 바로가기

프로그래밍 언어

[PHP] magic method __set, __get, __isset, __unset

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.




<?php 

class Test {

private $a;

public function __set($name, $value) { // 저장

$this -> $name = $value;

}

public function __get($name) { //출력

return $this->$name;

}

public function __unset($name) { //삭제

unset($this->$name);

}

public function __isset($name) { //확인

return isset($this->$name);

}

}

$obj = new Test;

$obj->a="aaa";

echo "isset : ".isset($obj->a)."<br>";

echo "get : ".$obj->a."<br>";

/*

$obj = new Test;


$obj->a=1; //__set메소드 실행됨


if(isset($obj->a)) { //__isset메소드 실행됨

echo $obj->a; //__get메소드 실행됨

}


unset($obj->a); //__unset메소드 실행됨

*/


?>


출력--

isset : 1

get : aaa