この記事では主にPHPの静的属性と静的メソッドの違いについて詳しく説明していますので、必要な方は参考にしてください
static
public、private、protected
static属性
を追加します。属性またはメソッドの前に静的キー 単語は静的属性です
実際の作業では、クラスの複数のオブジェクトが存在し、それらが 1 つのデータを共有する可能性があります。
解決策:
1: クラス定数。変更できません。
例:
2: データの一部を共有した後、このデータを共有するすべてのオブジェクトも変更を許可する必要がある場合があります。
だから静的があります
構文:
例:
ヒント: 静的プロパティはクラス定数と似ています (同じ) 唯一の違いは、クラス定数は変更できず、静的プロパティは変更できることです。かわった。アクセス方法は同じです。
:: アクセスできるのはクラス定数、静的プロパティ、静的メソッドのみです
静的プロパティは $ を付けて追加する必要があるため、アクセス時に $ を追加する必要はありません。クラス定数。 ;- & gt; static、つまり静的メソッド
を追加する前に、$
static メソッド
を追加する必要はありません。 static メンバーのアクセス: static 属性へのアクセス:
構文:
クラス名:: 静的プロパティ名
クラス内のすべての静的プロパティにアクセス静的メソッドへのアクセス
クラス外アクセス 構文:
静的メソッド。クラス空間に存在します。
クラス名::メソッド名(); 静的プロパティはクラス空間に格納され、非静的プロパティはオブジェクト空間に格納されます。
静的プロパティはクラスアクセス (::) を通じてアクセスされ、非静的プロパティはアクセスされます。オブジェクト (->) を通じて
静的メソッド アクセスはクラス Access (::)、
メソッドがオブジェクト空間に属するプロパティを内部的に操作しない場合、そのメソッドは静的メソッドにカプセル化され、このメソッドははるかに高速になります。
$this は静的メソッドでは使用できません*******
重要なヒント:
クラスに属している場合は、クラス名を使用するか、オブジェクトに属している場合は self:: を使用します、オブジェクト名または $this-> を使用します。 (通常のメソッドを除く == & gt; 一般的なメソッドはクラス空間に属しますが、$this またはオブジェクト名で使用する必要があります。データ型、ブール値 false の場合は出力がありませんprint 関数
スカラーデータ型のみを出力でき、ブール値 false の出力はありません print_r() スカラーデータ型だけでなくデータも出力できますが、ブール値 false の場合は出力できません 出力 var_dump($v1, $v2); 主にプログラマが __tostring(); を使用してプログラムをデバッグするために、変数に関する詳細情報を出力します。オブジェクトをエコーするとき、それは構造体を文字列に変換することを意味します。 __tostring() マジックメソッドは、何らかの操作によりオブジェクトが文字列に変換されるときに、PHP 自動実行メカニズムによって呼び出されます。このメソッドは、エラー (Fatal Err 致命的なエラー) をキャプチャし、プロンプト メッセージを出力します
例:__clone();
clone 関数
;以上がこの記事の全内容です、皆様の学習のお役に立てれば幸いです。
関連する推奨事項:
thinkphp3.2.3 写真をアップロードするために登録
以上がPHPの静的属性と静的メソッドの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。