ホームページ >バックエンド開発 >PHPの問題 >phpのアクセス権とは何ですか?

phpのアクセス権とは何ですか?

zbt
zbtオリジナル
2023-08-02 14:01:171760ブラウズ

php のアクセス権限には、パブリック アクセス権限、保護されたアクセス権限、プライベート アクセス権限があります。 1. public で変更されたパブリック アクセス権、クラス、プロパティ、およびメソッドは、クラスの内部または外部に関係なく、どこからでもアクセスできます; 2. protected で変更されたアクセス権、プロパティおよびメソッドは、クラス内でのみアクセスできます。または、継承されたクラス内でアクセスできます。 3. プライベート アクセス許可: プライベートで変更されたプロパティとメソッドは、クラスの内部でのみアクセスでき、クラスの外部や継承されたサブクラスではアクセスできません。

phpのアクセス権とは何ですか?

このチュートリアルの動作環境: Windows10 システム、php8.1.3 バージョン、DELL G3 コンピューター。

PHP は、Web 開発の分野で広く使用されている人気のオープンソース プログラミング言語です。 PHP では、アクセス許可は、クラス、プロパティ、メソッドが他のコードに対してどのように表示され、アクセスできるかを決定する重要な概念です。 PHP には、public、protected、private の 3 つの異なるアクセス許可修飾子が用意されています。この記事では、これら 3 つのアクセス修飾子を詳しく紹介します。

1. パブリック アクセス権:

パブリック アクセス権は、最も緩いアクセス権修飾子です。 public で変更されたクラス、プロパティ、メソッドは、クラスの内部または外部に関係なく、どこからでもアクセスできます。 public によって変更されたクラスは、任意のファイルによってインスタンス化でき、そのプロパティやメソッドに直接アクセスすることもできます。

例 1: public class

class MyClass {
public $publicVar = 'public variable';
public function publicMethod() {
echo 'This is a public method.';
}
}
$obj = new MyClass();
echo $obj->publicVar; // 输出:public variable
$obj->publicMethod(); // 输出:This is a public method.

2. 保護されたアクセス権:

保護されたアクセス権は、厳密なパブリック アクセス権よりも厳格です。 protected で変更されたプロパティとメソッドは、クラスまたは継承されたサブクラス内でのみアクセスでき、インスタンス化してクラス外にアクセスすることはできません。

例 2: protected クラス

class MyClass {
protected $protectedVar = 'protected variable';
protected function protectedMethod() {
echo 'This is a protected method.';
}
}
$obj = new MyClass();
echo $obj->protectedVar; // Fatal error: Cannot access protected property 
MyClass::$protectedVar
$obj->protectedMethod(); // Fatal error: Cannot access protected method 
MyClass::protectedMethod()

3. プライベート アクセス権:

プライベート アクセス権は、最も厳格なアクセス権修飾子です。 private で変更されたプロパティとメソッドはクラス内でのみアクセスでき、クラスまたは継承されたサブクラスの外部からはアクセスできません。

例 3: プライベート クラス

class MyClass {
private $privateVar = 'private variable';
private function privateMethod() {
echo 'This is a private method.';
}
}
$obj = new MyClass();
echo $obj->privateVar; // Fatal error: Cannot access private property 
MyClass::$privateVar
$obj->privateMethod(); // Fatal error: Cannot access private method 
MyClass::privateMethod()

概要:

上記の例を通じて、PHP におけるアクセス許可修飾子の役割とスコープを確認できます。 。パブリック アクセス権 (public) は最も緩く、どこからでもアクセスできます。保護されたアクセス権 (protected) はクラスおよび継承されたサブクラス内に制限され、プライベート アクセス権 (private) はクラス内に制限されます。これらのアクセス許可修飾子を適切に使用すると、コードのセキュリティと保守性が向上します。 。

以上がphpのアクセス権とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。