ホームページ  >  記事  >  PHP 中国語 Web サイトでは、PHP の構築方法とアクセス制御について説明します。

PHP 中国語 Web サイトでは、PHP の構築方法とアクセス制御について説明します。

无忌哥哥
无忌哥哥オリジナル
2018-06-28 14:23:361754ブラウズ

* 構築メソッドとアクセス制御(クエリーとセッター)

* 構築メソッド:

* 1. 固定メソッド名: __constructor()

* 2. 機能: オブジェクト作成時に自動的に完了する必要がある操作を宣言し、オブジェクトの属性を初期化する、クラス内のメソッドを自動的に呼び出すなど

* 3. 標準化されたクラスはコンストラクターメソッドを1つだけ持つ必要があり、持つこともできます

* 補足:二重アンダースコアで始まるメソッドはマジックメソッドと呼ばれ、メソッドとは異なります通常のメソッドの比較:

* 1. 異なる呼び出し元: オブジェクトによって直接呼び出され、ユーザーには権限がありません

* 2. 異なる呼び出しシナリオ: 特定のシナリオでのみ呼び出すことができ、自動的に呼び出されます

* 共通のトリガー マジックメソッドの呼び出しシナリオは次のとおりです:

* 1. オブジェクトの初期化、2. オブジェクトのクローン作成、5. オブジェクトの破棄、 class でコンストラクターが宣言されている場合、宣言時に属性を初期化する必要はありません

* 初期化は不要になったので、なぜ $name に空の文字列を与える必要があるのか​​と疑問に思うかもしれません。$age は0、そして $stature は空の配列ですか?

* 理由は次のとおりです: 現在、配列とオブジェクトは型ヒントをサポートしていますが、文字列などのスカラーと数値型はまだサポートされていません。 * したがって、属性にその型を表す初期値を与えると、型ヒントの役割を果たすことができます。これは良い習慣です

*

* クラス属性がクラス内の構築メソッドを通じて初期化されるとき、クラスの外部で値を直接割り当てる必要はありません。属性は初期化されます

* したがって、セキュリティとデータのカプセル化のニーズのために、クラスの属性を直接取得する必要はありません。外部への直接アクセスは許可しません

* クラス属性を変更するには、private キーワードを使用するだけです

* private: このクラスメソッド内でのみアクセスでき、外部クラスやサブクラスからはアクセスできません

*クラスがプライベートである場合、アクセスインターフェイスを外部に提供する必要があります

* このインターフェイスはクラスメソッドを通じて実装され、アクセス制御はパブリックです。つまり、クラスは外部からアクセスできます

* 必要な検出は外部で実行できますインターフェイス メソッドでアクセスして、リクエストが正当であり、データが安全で意味のあるものであることを確認します

* 外部クエリ (読み取り) 操作の場合は、問題を解決するために Query メソッドを設定します

* 推奨されるクエリ メソッド名は次のとおりです: get + 属性name、属性名の最初の文字は大文字で、キャメルケースの命名方法が使用されます

* クエリーは通常、パラメーターを渡す必要はありません。パラメーターが渡される場合、それらは通常クエリ条件です。

りー

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