【PHP】定数の使い方とconstとdefineの違い

PHP

PHPの定数の使い方とconstとdefineの違いを紹介します。

定数とは

定数を使うと、値が変化しない、変化してほしくない変数を明言的に固定することができます。
定数は、一度宣言すると上書きできません。

定数の定義方法は2種類

定数はconstを使った定義方法場合と、defineを使った定義方法があります。

<?php 

// constの例
const MAX_QUANTITY = 0.1;

// defineの例
define('MAX_QUANTITY2', 0.1);

この2つの定義方法では、下のような違いがあることに注意しましょう。

constとdefineの違い

以下3つの違いがあります。

  • constはif文や関数の中では使えない
  • defineではグローバルスコープに値が配置される
  • constは名前空間内に配置される

if文や関数の中ではconstが使えないので、defineを使うことになります。

定数を使うメリット

定数は、一度宣言すると上書きできないため、変数の意味が明確になります。

定義されているかを確認するdefined()

defined()を使うことで、二度定義することを防ぐことができます。

<?php  
  if(!defined('MAX_QUANTITY3')) {
    define('MAX_QUANTITY3', 0.1);
  }

PHP

Posted by devsakaso