PHP のアクセス修飾子の紹介 (コード例)

不言
リリース: 2023-04-04 20:58:01
オリジナル
3970 人が閲覧しました

変数や関数の前に保護するものをアクセス修飾子といいます。アクセス修飾子を付けることで、関数へのアクセス許可(アクセス許可)を設定することができます。今回はPHPにおけるアクセス修飾子の使い方を紹介します。

PHP のアクセス修飾子の紹介 (コード例)

アクセスする必要があるのはなぜですか?

#変数名と関数名の上書きを防止する

public の使用法を見てみましょう。public はどこからでも最も広くアクセスできます。アクセス修飾子。

AさんがoverlapFuncBaseを開発し、BさんがoverlapFuncBaseを継承してoverlapFuncサンプルを作成したとします。

<?php
class  overlapFuncBase {
    public $s = 1;
}
class overlapFunc extends overlapFuncBase { 
    public $s = 2;
}
$obj_overlap = new overlapFunc();
var_dump($obj_overlap);
ログイン後にコピー

Result

object(overlapFunc)#1 (1) {
    ["s":"overlapFunc":public] => int(2)
}
ログイン後にコピー

BのoverlapFuncでは、Aさんが作成したoverlapFuncBaseが使えますが、変数名$sが同じなので上書きされます。

したがって、現時点ではアクセス修飾子が必要です。

<?php
class  overlapFuncBase {
    private $s = 1;
}
class overlapFunc extends overlapFuncBase { 
    private $s = 2;
}
$obj_overlap = new overlapFunc();
var_dump($obj_overlap)
ログイン後にコピー

結果

object(overlapFunc)#1 (2) {
    ["s":"overlapFunc":private] => int(2)
    ["s":"overlapFuncBase":private] => int(1)
}
ログイン後にコピー

最初のコードとの違いは、変数 $s の前にアクセス修飾子 public を private に変更していることです。

private は、自分のクラス内でのみアクセスできることを意味します。

したがって、Aが作成した各クラスは同じ変数名であっても異なる結果が得られるようになりました。

アクセス修飾子の種類

アクセス修飾子には、private、protected、public が含まれます

対応する範囲は次の順序で増加します

private→protected→public

他にも static という特殊なアクセス修飾子があり、クラス名を指定すればどこでも使用できます。

この記事はここで終わります。さらにエキサイティングなコンテンツについては、php 中国語 Web サイトの関連コラム チュートリアルに注目してください。 ! !

以上がPHP のアクセス修飾子の紹介 (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート