Java에서는 객체 지향의 주요 속성 중 하나인 attributes를 캡슐화해야 합니다. Java에서 속성을 캡슐화한 후 각 속성에 대해 set 및 get 메서드를 설정할 수 있습니다. 원칙은 PHP에서 속성에 액세스하는 데 적용되지만 PHP에서 모든 객체를 설정할 필요는 없습니다. 기본적으로 get()set()이라는 마법의 메서드가 있어 비공개 속성에 쉽게 액세스할 수 있습니다. 다음:
class person{ private $name;//这是private类型的属性,我们直接使用对象->属性是访问不到的。我们需要添加魔术方法get()才可以访问 private $age; private function get($proname){//get方法是系统调用的,添加此魔术方法之后,我们直接对象->属性名获取值时,系统会自动地调用这个方法,但是我们必须添加参数,以及添加方法体。 return $this->$proname; } private function set($proname,$value){//设置参数,我们需要设置两个参数 echo "set<br>"; $this->$proname=$value; } public function construct($name,$age){ $this->name=$name; $this->age=$age; } }
다음 사항에 주의하세요.
클래스 속성을 캡슐화한 후 속성을 비공개로 설정하면 직접: 개체->속성에 액세스할 수 없으므로 get() 메서드를 추가해야 합니다. 만 액세스할 수 있습니다
속성이 비공개로 설정된 경우에는 직접 개체->속성=값을 설정해야 합니다. 또한 속성에 액세스하려면 _set() 메서드를 추가해야 합니다.
구현:
private function get($proname){ return $this->$proname; } private function set($proname,$value){ $this->$proname=$value; }
위 내용은 PHP에서 객체의 속성을 조작하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!