Into the Program

【PHP】定数

Image

PHPにおける定数の定義と利用方法について解説します。

定数とは定められた数のことです。そのまま定数(ていすう)と読みます。定数に何が定められてるかというと、値です。特徴としては、定数の値は処理が実行している間は変更することができないという点が挙げられます。

定数は以下のように定義します。

// 構文
define("定数名","定数値");

// 記述例
morning1.php

<?php

  // 定数MORNINGを定義
  define("MORNING","おはよう!");

  // 定数MORNINGの内容を表示
  echo MORNING;

?>

Demo

morning1.phpのデモは上記リンクから確認できます。

上記コードのMORNINGという定数に「おはよう!」という文字列を代入し、echoで画面に定数MORNINGの値が表示しています。実行すると「おはよう!」という文字列が出力されます。これだけの処理であれば定義方法以外に変数との違いはないように思われます。

定数の特徴は、一度定めた値が処理実行中に変更することができない点であるとお話しました。

では、定数の値が処理実行中に変更できないことを確認してみましょう。

補足:上記で定義したMORNINGが大文字であるのには理由があって、定数名は慣習的に大文字で記述します。ソースコードを読んだ際に一目で定数がわかるようにそのようになっています。

// 記述例
morning2.php
  
<?php
  
  // 定数MORNINGを定義
  define("MORNING","おはよう!");
  
  // 定数MORNINGの再定義を試みる
  define("MORNING","こんにちは!");
  
  // 定数MORNINGの内容を表示
  echo MORNING;
  
?>

定義済みの定数を再定義しようとした行でNoticeエラーが発生し、指定された定数は定義済みだよと表示されます。その後、echo関数で最初に定義した「おはよう!」という文字列が画面に表示されます。(Noticeエラーを非表示に設定している場合は「おはよう!」のみが表示されます。)

上記の通り、一度定義された定数は実行中に変更できないということがお分かりいただけたかと思います。

定数は変更させたくない値を保持させたい場合に大変便利ですので、プログラミングする際には大いに活用しましょう。

SHARE