이미 설정 한 매개 변수의 get 및 set 메서드를 재정의 할 수 있습니까? 그래서 내가 param을 설정할 때마다 나는 그것과 함께 작업 할 수있는/유효성을 검사 할 수 있습니까?PHP override get set methods
class User {
public $username;
function custom_set($name, $value) {
if(strlen($value) < 5) {
return "not long enough";
} else {
$this->$name = $value;
}
}
}
$u = new User();
$u->username = "ted";
echo $u->username;
출력 : "충분히하지"
이 내가 그냥 쓴 아주 간단한 예이며, 아마 내가 뭘하려고 오전 전달하기 위해 단지, 오류가 있습니다.
기본적으로 $u->username = "anything";
을 호출 할 때마다 custom_set
메서드를 호출하려고합니다.
내가 생성자에서 검증을하고 싶지 않아 내가 $u->setVal("ted");
같은 별도의 방법을 만들려고하지 않는이 가능합니까?
* 매개 변수 *를 저장하는 데 간단한 배열을 사용하지 않고 실제 * 개체 속성 *을 사용하지 않는 이유는 무엇입니까? 이런 식으로 여러분의'__set'과'__get' 매직 메소드는 항상 – dcestari