PHP 액세스 권한 수정자에는 세 가지 유형이 있습니다. 1. 공개는 공유를 의미하며 가장 큰 권한 범위로 어디에서나 액세스할 수 있습니다. 2. 보호는 보호되고 상속되며 해당 사용자만 사용할 수 있음을 의미합니다. 클래스 자체 및 클래스의 내부 멤버에 액세스할 수 있습니다. 3. 프라이빗은 프라이빗을 의미하며 클래스 정의의 중괄호 내에서만 액세스할 수 있습니다.
이 문서의 운영 환경: Windows 10 시스템, PHP 버전 8.1, Dell G3 컴퓨터
세 가지 유형이 있습니다.
public 공유
protected 보호, 상속
private private
자세한 소개:
public:
Public 유형은 클래스 내부, 하위 클래스 또는 클래스 외부에서 사용할 수 있습니다. , 무제한
기능: 외부 호출 가능, 내부 호출 가능, 하위 클래스 호출 가능
하위 클래스에서는 self::var를 통해 공용 메서드나 속성을 호출할 수 있으며, parent::method는 인스턴스에서 상위 클래스 메서드를 호출
호출할 수 있습니다. $obj->var
를 통한 공개 유형의 메소드 또는 속성 protected:
Protected 유형은 클래스 및 하위 클래스 내부에서 사용할 수 있지만 클래스 외부에서는 사용할 수 없습니다
특징: 외부에서 호출할 수 없지만, 하위 클래스에서 내부적으로 호출할 수 있습니다
하위 클래스에서 보호된 메서드나 속성은 self::var를 통해 호출할 수 있으며 parent::method는 상위 클래스 메서드를 호출할 수 있습니다
인스턴스에서는 $obj->를 ;var로 사용할 수 없습니다. 보호 유형의 호출 메소드 또는 속성
private:
Private 유형은 클래스 내부에서만 사용할 수 있으며 클래스 외부나 하위 클래스에서는 사용할 수 없습니다.
기능: 외부 호출 불가, 내부 호출 가능, 서브클래스 호출 불가
이 유형의 속성 또는 메소드는 이 클래스에서만 사용할 수 있으며 이 클래스의 인스턴스, 서브클래스 또는 서브클래스의 인스턴스에서는 호출할 수 없습니다. 속성 및 메서드
예는 다음과 같습니다.
메서드 생성 시 지정하지 않으면 기본값은 public
<?php class EMBA_student // 声明EMBA学生类 { //用private来定义私有类的属性 private $no; //序号 private $name; // 姓名 private $gender; //性别 private $age; //年龄 //方法 //方法1 ,私有方法,输出年龄 private function show_age() { echo"我的年龄是:$this->age<br />"; } //方法2,公有方法,回答年龄 public function ask_age() { $this->show_age(); } //方法3,设置数据 function set_data($arr){ $this->no=$arr["no"]; $this->name=$arr["name"]; $this->gender=$arr["gender"]; $this->age=$arr["age"]; } } //实例化一个对象 $s=new EMBA_student; $arr=array("no"=>"1","name"=>"Qian Zhang","gender"=>"Female","age"=>"33","department"=>"商业营销"); $s->set_data($arr); //echo $s->age;//Fatal error: Cannot access private property EMBA_student::$age in C:\xampp\htdocs\v\v.php on line 47 //$s->show_age(); //Fatal error: Call to private method EMBA_student::show_age() from context '' in C:\xampp\htdocs\v\v.php on line 48 $s->ask_age(); ?>
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 PHP 액세스 권한 수정자는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!