>백엔드 개발 >PHP 문제 >PHP 클래스의 공개 수정자를 변경하는 방법

PHP 클래스의 공개 수정자를 변경하는 방법

PHPz
PHPz원래의
2023-04-10 09:34:40614검색

PHP 클래스의 공개 수정자는 클래스의 속성이나 메서드가 표시되고 외부 코드에 액세스할 수 있음을 나타내는 데 널리 사용됩니다. 그러나 코드가 커지고 복잡해짐에 따라 특정 속성이나 메서드에 대한 액세스를 수정해야 할 수도 있습니다. 이때 클래스 내에서 public 수식자를 어떻게 변경하는지 고려해야 합니다.

PHP의 public 수정자

PHP에서는 클래스 속성과 메서드가 기본적으로 public으로 설정됩니다. 이는 모든 코드에서 보고 사용할 수 있음을 의미합니다. 예를 들어 클래스를 정의합니다.

class ExampleClass {
    public $public_property = 'This is a public property';
    public function public_method() {
        echo 'This is a public method';
    }
}

공용 속성 $public_property와 공용 메서드 public_method를 포함하는 exampleClass라는 클래스를 정의합니다. 이러한 속성과 메서드는 외부 코드에서 액세스하고 사용할 수 있습니다.

공용 수정자를 변경하세요

액세스 수정자를 수정하여 클래스 속성과 메서드에 대한 액세스를 제어할 수 있습니다. PHP에는 공개, 보호, 비공개라는 세 가지 액세스 수정자가 있습니다.

기본적으로 공개 수정자를 사용합니다. 그러나 때로는 특정 속성이나 메서드의 액세스 권한을 protected 또는 private로 설정해야 할 수도 있습니다. 그렇다면 클래스에서 public 수정자를 어떻게 변경합니까?

  1. 속성의 액세스 권한을 수정하세요

클래스의 속성에 대해 protected 또는 private 수정자를 사용하여 액세스 권한을 제한할 수 있습니다. 보호 속성은 클래스와 하위 클래스 내에서만 액세스할 수 있고, 프라이빗 속성은 클래스 내에서만 액세스할 수 있습니다.

class ExampleClass {
    public $public_property = 'This is a public property';
    protected $protected_property = 'This is a protected property';
    private $private_property = 'This is a private property';
    public function public_method() {
        echo 'This is a public method';
    }
}

위의 예에서는 $public_property, $protected_property 및 $private_property라는 세 가지 속성을 exampleClass에 정의했습니다. 그 중 $public_property는 공용 속성이고 $protected_property는 보호 속성이며 $private_property는 개인 속성입니다.

  1. 메서드의 액세스 권한을 수정하세요

클래스의 메서드의 경우 protected 또는 private 수정자를 사용하여 액세스 권한을 제한할 수도 있습니다. 그러나 protected 메서드와 private 메서드는 클래스 내에서만 사용할 수 있다는 점에 유의하는 것이 중요합니다.

class ExampleClass {
    public function public_method() {
        echo 'This is a public method';
        $this->protected_method();
        $this->private_method();
    }
    protected function protected_method() {
        echo 'This is a protected method';
    }
    private function private_method() {
        echo 'This is a private method';
    }
}

위의 예에서는 공개 메소드인 public_method를 정의했고, 보호 메소드인 protected_method와 비공개 메소드인 private_method도 정의했습니다. public_method에서는 $this를 사용하여 보호된 메소드와 비공개 메소드에 액세스할 수 있습니다.

요약

PHP에서는 public 수정자가 널리 사용되며 기본적으로 클래스 속성 및 메서드에 적용됩니다. 그러나 속성이나 메서드를 클래스 내에서만 사용하도록 제한해야 하는 경우 protected 또는 private 한정자를 사용할 수 있습니다. 이 메서드는 클래스의 속성과 메서드에 대한 액세스 권한을 효과적으로 제어할 수 있으므로 코드의 보안과 유지 관리 가능성이 보장됩니다.

위 내용은 PHP 클래스의 공개 수정자를 변경하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.