【PHP】クラスの定義「クラス内の定数(const…)」について【入門】 投稿者:Ka-Chan 投稿公開日:2021年4月4日 投稿カテゴリー:PHP 投稿コメント:0件のコメント PHPの全目次 PHP クラスの定義の目次 メンバー変数とメンバーメソッド 引数があるメンバーメソッド アクセス修飾子 メンバー変数へのアクセスとメンバーメソッドからの値の取得 クラス内の定数 コンストラクタ クラス内の定数 クラス内で定数を定義することが出来ます。定数は固定の値である必要があります。構文は下記の通りです。 class クラス名(){ const 定数名 = 値;} PHPで定数を定義するには”define”を使いますが、クラス内部で定義する場合には”const”の後に定数の名前を指定し、値を定義します。変数のように”$”マークは定数名の頭には付きませんので注意して下さい。またクラス内からこの定数の値を参照するには”self::定数名”のように記述します。 class クラス名(){ const 定数名 = 値; function メソッド名(){ print(self::定数名); }} ※「self」はカレントクラスを表します。「$this」はオブジェクト毎ですけど「self」はクラスとして考える場合に使います。定数はオブジェクト毎ではなくクラス単位で設定されている値だからです。 サンプルコード ▼Example-class5-1.php<!DOCTYPE html><html lang=“ja”><head><title>PHP TEST</title></head><body><?php$tv = new Television();$tv->setChannel(20);print(‘現在のチャンネルは’.$tv->getChannel().‘<br>’);$tv->setChannel(10);print(‘現在のチャンネルは’.$tv->getChannel().‘<br>’);class Television{ private $channelNo = 8; const MAX_CHANNEL = 12; const MIX_CHANNEL = 1; const ERROR_MSG = ‘チャンネルは1から12の間で設定して下さい<br>’; function setChannel($channel){ if (($channel >= self::MIX_CHANNEL) and ($channel <= self::MAX_CHANNEL)){ $this->channelNo = $channel; }else{ print(self::ERROR_MSG); } } function getChannel(){ return $this->channelNo; }}?></body></html> 上記のファイルをwwwサーバーのドキュメントルート以下に設置しブラウザからアクセスすると次のように表示されます。 タグ: PHP Please Share This Share this content Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window Opens in a new window その他の記事を読む 前の投稿【PHP】クラスの定義「メンバー変数へのアクセスとメンバーメソッドからの値の取得」について【入門】 次の投稿【PHP】クラスの定義「コンストラクタ(construct…)」について【入門】 おすすめ 【PHP】繰り返し処理「for文で複数の変数に変化させる」について【入門】 2021年2月28日 【PHP】クラスの定義「メンバー変数とメンバーメソッド」について【入門】 2021年4月3日 【PHP】変数「他の変数を代入」する方法について【入門】 2020年8月1日 コメントを残す コメントをキャンセルコメントコメントする名前またはユーザー名を入力してください メールアドレスを入力してコメント Web サイトの URL を入力してください。(任意) 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。