PHPクラス内での定数の使用方法と例


  1. 定数の定義とアクセス: クラス内で定数を定義するには、constキーワードを使用します。定数の名前は大文字で記述し、クラス内で一意である必要があります。以下は、定数の定義とアクセス方法の例です。

    class MyClass {
       const MY_CONSTANT = 10;
       public function printConstant() {
           echo self::MY_CONSTANT;
       }
    }

    上記の例では、MY_CONSTANTという定数がMyClassクラス内で定義されています。printConstantメソッド内では、self::MY_CONSTANTを使用して定数にアクセスしています。

  2. 定数の値の変更を防ぐ: 定数は、一度定義されると変更できないため、その値が変更されることを防ぎます。以下は、定数の値を変更しようとする場合のエラーメッセージの例です。

    class MyClass {
       const MY_CONSTANT = 10;
    }
    $obj = new MyClass();
    $obj::MY_CONSTANT = 20;  // エラー: 定数の値を変更できません

    上記の例では、MY_CONSTANTの値を変更しようとすると、エラーメッセージが表示されます。

  3. 定数の継承: クラスは継承関係を持つことができます。継承されたクラスでは、親クラスの定数を引き継ぐことができます。以下は、定数の継承の例です。

    class ParentClass {
       const PARENT_CONSTANT = 10;
    }
    class ChildClass extends ParentClass {
       public function printParentConstant() {
           echo parent::PARENT_CONSTANT;
       }
    }
    $obj = new ChildClass();
    $obj->printParentConstant();  // 出力: 10

    上記の例では、ChildClassParentClassを継承しており、printParentConstantメソッド内で親クラスの定数にアクセスしています。

これらはPHPクラス内で定数を使用するための基本的な方法と例です。定数は、一度定義された値が変更されないようにする必要がある場合に便利です。