Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP 클래스 속성

<시간/>

소개

클래스 내부에 선언된 데이터 멤버를 속성이라고 합니다. 속성은 속성 또는 필드라고도 합니다. PHP에서 속성은 액세스 지정자 키워드 public 중 하나로 한정됩니다. , 비공개 또는 보호 . 속성 이름은 PHP에서 유효한 레이블이 될 수 있습니다. 속성 값은 클래스 인스턴스마다 다를 수 있습니다. 그래서 인스턴스 변수라고도 합니다.

모든 인스턴스 메서드 내에서 pesudo-변수 $this로 사용 가능한 개체의 컨텍스트를 호출하여 속성에 액세스할 수 있습니다. . 속성이 공개로 선언된 경우 ->의 도움으로 이의를 제기할 수 있습니다. 운영자. 속성이 정적으로 정의된 경우 키워드, 해당 값은 클래스의 모든 개체 간에 공유되며 범위 확인 연산자 (::) 를 사용하여 액세스됩니다. 및 클래스 이름.

속성 선언 및 액세스

이 예는 속성이 정의되고 액세스되는 방법을 보여줍니다.

예시

<?php
class myclass{
   private $fname="Kiran";
   public $mname="Pratap";
   static $lname="Singh";
   function dispdata(){
      echo "$this->fname\n";
      echo "$this->mname\n";
      echo myclass::$lname;
   }
}
$obj=new myclass();
$obj->dispdata();
?>

출력

위 코드의 출력은 다음과 같습니다 -

Kiran
Pratap
Singh

클래스 외부에서 public으로 선언된 인스턴스 속성은 개체에서 사용할 수 있지만 private 속성은 액세스할 수 없습니다. 이전 버전의 PHP에서는 var 속성 선언에 키워드를 사용할 수 있습니다. 지금은 더 이상 사용되지 않지만 이전 버전과의 호환성을 위해 계속 사용할 수 있으며 속성의 공개 선언으로 처리됩니다.

PHP 7.4에는 속성 변수의 유형 선언이 도입되었습니다.

예시

<?php
class myclass{
   private string $name;
   private int $age;
   function setdata(string $x, int $y){
      $this->name=$x;
      $this->age=$y;
   }
}
$obj=new myclass("Kiran",20);
?>