LoginSignup
0
0

More than 3 years have passed since last update.

PHPの定数

Last updated at Posted at 2019-07-22

定数について、わかっているつもりでも種別や使い方を誤る事が多いので、
勉強しました。

定数とは

定数とは変数と異なり、途中で中身を変更できない入れ物のことです。
スクリプトの中でなんらかの意味を持つ値にあらかじめ値をつけておく仕組みとも言えます。

const TAX = 1.08;
$price = 1000;
$sum = $price * TAXs;
print $sum;
//結果:1000

constは定数を宣言するための命令で、ここでは定数TAXを1.08という値で設定しています。

const 定数名 = 

定数の命名規則は変数とほぼ同じですが、次の点が異なります。

1.先頭に「$」のような記号を付ける必要がない

変数のように、1文字目の「$」は不要です。定数は「$TAX」ではなく、そのまま「TAX」のように命名します。

2.PHPで意味を持つ予約語でないこと

PHPで元々定数定義されている予約語は使用しないでください。

3.すべて大文字で命名する

構文規則ではりませんが、定数は変数と視覚的にも区別しやすいようにすべて大文字で命名します。
命名規則は「TAX_FREE」のようにアンダースコア「_」区切りで表します。

ただし、defineで定義すると以下のように値を変更できません。

<?php
define('TAX', 1.08); // 消費税
define('TAX', 1.10); // 消費税を変更

echo TAX;

<実行結果>
Notice: Constant TAX already defined
1.08

定義済みの定数一覧

PHPには最初から用意

定数 概要
__FILE__ 実行中のファイル名(絶対パス)
__DIR__ 実行中のファイルが存在するフォルダ
__LINE__ 実行中の行番号
__FUNCTION__ 実行中の関数名
__CLASS__ 実行中のクラス名(所属する名前空間含む)
__METHOD__ 実行中のメソッド名
__TRAIT__ 実行中のトレイと名(所属する名前区間含む)
__NAMESPACE__ 現在の名前空間
DIRECTORY_SEPARATOR フォルダ区切り文字 windows「\」linux「/」
PATH_SEPARATOR パス区切り文字
PHP_VERSION 使用しているPHPバージョン
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0