多くのオブジェクト指向の考え方が PHP5 に追加されました。PHP5 のオブジェクト指向の考え方は Java のオブジェクト指向の考え方に近いです。ここでは、PHP5 を学習している友人の役に立つことを願って、PHP5 の static キーワードと const キーワードの機能について説明します。
(1) 静的
クラス内の static キーワードは、メンバーを静的として記述するために使用されます。static の後のメンバーはクラスに属し、どのオブジェクト インスタンスにも属さないため、他のクラスにはアクセスできません。インスタンスを共有することで、プログラムがメンバーを完全に保護することができます。クラスの静的変数はグローバル変数に非常に似ており、グローバル関数と同様に、クラスのすべてのインスタンスで共有できます。クラスの静的メソッドは、クラスの静的プロパティにアクセスできます。また、静的メンバーには self を使用してアクセスする必要があります。これを使用するとエラーが発生します。
(2)定数
const は、C の #define に似た定数を定義するキーワードです。プログラム内で定数の値を変更するとエラーが発生します。
上記のコードの例を示します: (注: 次のコードは phpe.net からのものです)
クラスカウンター
{
private static $count = 0;//静的プロパティを定義します
const VERSION = 2.0;//定数を定義します
//コンストラクター
関数__construct()
{
自分::$カウント ;
}
//デストラクター
関数__destruct()
{
self::$count--;
}
//静的メソッドを定義します
静的関数 getCount()
{
自分自身を返す::$count;
}
}
//インスタンスを作成します
$c = 新しいカウンター();
//印刷を実行
print( Counter::getCount(). "
n" ); //クラス名を直接入力して静的メソッドにアクセスする Counter::getCount
//クラスバージョンを印刷します
print( "使用されているバージョン: " .Counter::VERSION. "
ん" );
?>