63.PHP類属性

3760 ワード

ツールバーの
クラスの変数メンバーは、「プロパティ」または「フィールド」、「フィーチャー」と呼ばれ、このドキュメントでは「プロパティ」と統一されています.属性宣言は、キーワードpublic、protected、privateで始まり、通常の変数宣言で構成されます.プロパティの変数は初期化できますが、初期化の値は定数でなければなりません.ここでの定数は、実行時の情報に依存せずにPHPスクリプトがコンパイルフェーズでその値を得ることができることを意味します.
public、protected、privateの詳細については、アクセス制御(可視性)を参照してください.
Note: 

       PHP 4,PHP 5                 var    (     )publicprotected   privatevar  。  PHP 5.0   5.1.3,var         ,     E_STRICT   ,   5.1.3           ,       。        varpublicprotected   private   ,PHP 5       public

クラスのメンバーメソッドでは、->(オブジェクト演算子):this−>property(propertyが属性名)という方法で非静的属性にアクセスできます.静的プロパティは、:(二重コロン):self::propertyでアクセスします.静的属性と非静的属性の違いについては、Staticキーを参照してください.
メソッドがクラス定義内で呼び出されると、使用可能な擬似変数thisがあります.thisは、プライマリコールオブジェクトへの参照です(通常は、このメソッドが依存するオブジェクトですが、2番目のオブジェクトから静的に呼び出された場合は別のオブジェクトでもあります).
Example#1属性宣言
<?php class SimpleClass { //         public $var1 = 'hello ' . 'world'; public $var2 = <<<EOD hello world EOD; public $var3 = 1+2; public $var4 = self::myStaticMethod(); public $var5 = $myVar; //         public $var6 = myConstant; public $var7 = array(true, false); //  PHP 5.3.0    ,         public $var8 = <<<'EOD' hello world EOD; } ?> 
Note: 

     /       ,    /    。 

heredocsとは異なり、nowdocsはプロパティ宣言を含む任意の静的データコンテキストで使用できます.
Example#2例:nowdocを使用して属性を初期化する
<?php class foo { //   5.3.0   public $bar = <<<'EOT' bar EOT; } ?>