オブジェクト定数(クラス内定数)

オブジェクト定数(クラス内定数)は、constキーワードを前に付けて定義する。

通常の定数のように、define()関数で定義することはできない。

書式

class クラス名 // クラスを定義
{
    const オブジェクト定数名 = 'オブジェクト定数の値'; // オブジェクト定数を定義
    function メソッド名( $var ) {
        クラス名::オブジェクト定数名; // メソッド内部から、オブジェクト定数にアクセス
    }
}
クラス名::オブジェクト定数名; // クラス外部から、オブジェクト定数にアクセス

同じクラスのオブジェクト定数(クラス内定数)へアクセスするには、selfキーワードを使うこともできる。

親クラスのオブジェクト定数(クラス内定数)へアクセスするには、parentキーワードを使うこともできる。

サンプル

<?php
class taxClass
{
    const TAX = 0.1;
    public static function func_tax( $var ) {
        return $var * ( 1 + taxClass::TAX );
    }
}
echo '税率' . taxClass::TAX * 100 . '%の場合: ';
echo taxClass::func_tax( 100 ) . '円<br />';
?>

↓↓↓出力結果↓↓↓

税率10%の場合: 110円

スポンサード リンク

カテゴリー: PHP, オブジェクト指向プログラミング タグ: パーマリンク