ホームページ >バックエンド開発 >PHPチュートリアル >PHP クラスでの静的メソッドの使用例_PHP チュートリアル
PHP の静的メソッドの場合は、関数または変数の前に static を追加するだけで、インスタンス化する必要はありません。いくつかの例を示します。 . 静的メソッドのインスタンス。
PHP も例外ではありません!いわゆる静的メソッド (プロパティ) は、static キーワードでマークされたプロパティまたはメソッドです (例: static プロパティ public static username;)
静的メソッドと非静的メソッドの最大の違いは、ライフサイクルが異なることです。例を使って説明しましょう。
静的メソッドを定義するのは非常に簡単です。たとえば、キーワード関数を宣言する前に static を追加します。
コードをコピー | |
{
静的関数 fun() |
使用する場合は、静的変数と同様に、インスタンス化する必要はありません。たとえば、:: を使用して呼び出すことができます。
コードは次のとおりです
| 通常の方法との比較
パブリック $num = 5;
}
echo "オブジェクトの数は {$this->num}.n です";
}
}
$m->fun_3('テスト');
私は fun_1 という名前のパブリック メソッドです。 オブジェクトの数は10です。
私は fun_2 という名前の静的メソッドです。 別の例を見てください 例を使用して説明します。
この例からわかるように、静的プロパティはクラスがインスタンス化される前に機能し、オブジェクトが破棄されても静的プロパティは引き続き機能します。 続きを読む 1. PHP クラスでは、すべてのプロパティとメソッドの可視性がパブリックであると仮定すると、クラスのメソッドやプロパティに外部からアクセスするときは、オブジェクト [クラスのインスタンス化プロセス] を通じて呼び出す必要があります。 例:
クラス内のメソッドにアクセスします: $logObj->writeLog($param1, $param2, $param3, $param4); クラス内のプロパティにアクセス: echo $logObj->root; 2. クラス内の属性が static キーワードによって変更された場合、オブジェクトを通じて static に変更された属性にアクセスすることはできません。ただし、クラス内のメソッドが static によって変更された場合は、オブジェクトまたはクラス名: : メソッド名によってアクセスされます。 3. クラス内のメソッドが static によって変更される場合、$this はそのクラスのインスタンス化されたオブジェクトを参照するため、オブジェクトを渡さずに呼び出すことができます。利用できません。 |