PHP_PHP チュートリアルで静的メソッドを使用する際の注意点

WBOY
リリース: 2016-07-13 10:18:52
オリジナル
761 人が閲覧しました

PHP で静的メソッドを使用する場合のいくつかの注意事項

この記事では、PHP で静的メソッドを使用する場合の一般的な注意事項をいくつか紹介します。参考のためにみんなで共有してください。具体的な方法は以下の通りです

1. クラス内のメソッドが静的として宣言されていない場合でも、変更可能なクラス メンバー変数を使用しない場合でも、演算子::; を使用して外部から呼び出すことができます。

2. (:: 演算子を使用して) 静的に呼び出されるメソッド内の $this の値は、それが定義されているクラスではなく、呼び出しのコンテキストによって決定されます。

たとえば、次のコード:

1このコードの出力は何ですか? TestClass1 からのnormal_v
が正しい出力であることがわかりました。 TestClass2 のnormal_v

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

クラス TestClass1

{

public $normal_v = 'TestClass1 のnormal_v'

public static $STATIC_V = 'TestClass1 からの STATIC_V'

パブリック関数 test_func1()

{

echo $this->normal_v.'
'.self::$STATIC_V; }

}

クラス TestClass2

{

public $normal_v = 'TestClass2 のnormal_v';

public static $STATIC_V = 'TestClass2 からの STATIC_V'

パブリック関数 test_func2()

{

TestClass1::test_func1();

}

}

$t2 = 新しい TestClass2();

$t2->test_func2();

TestClass1 の STATIC_V 注: test_func1() は TestClass1 で定義されていますが、TestClass2 で呼び出され、その内部 $this 変数は TestClass2 によって決定されます!

実際、これら 2 つのクラス間の関係は「双方向の関連付け」である必要があります。

興味のある友人は、この記事の例をテストして実行してみると、新たな成果が得られると信じています。

http://www.bkjia.com/PHPjc/879612.html

www.bkjia.comtru​​e

http://www.bkjia.com/PHPjc/879612.html技術記事 PHP で静的メソッドを使用する場合のいくつかの注意事項 この記事では、PHP で静的メソッドを使用する場合の一般的な注意事項をいくつか紹介します。参考のためにみんなで共有してください。具体的な方法は以下の通りです。 1.クラスであっても...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート