PHP 定数 の使い方〜未経験の為のPHPプログラミング入門講座〜
この記事の著者 ->S.E; です。
普段は、システム開発に必要なヒアリング、システムの要件定義、設計からプログラマとしてWebサイトやWebアプリケーションの開発、WordPressでのブログの執筆やサーバー運用・管理を行っています。
このページは「未経験の為のプログラミング講座 ゼロから始めるPHPプログラミング〜初級から実践編までを網羅〜」としてPHPの基本的な部分を【初級編】【中級編】【上級編】に分けて解説しています。最終的には簡単なフォームやシステム開発をフルスクラッチで行うことを目的としています。また、参考になる書籍なども紹介しています。
プログラミング学習にお困りの方は
現役のSE・プログラマーだからこそできるサポートがあります。
ブログの筆者が最新の情報・ノウハウで学習を徹底サポートするサービスを提供しています。
プログラミング初級者〜中級者をサポートしてきました。
学習が行き詰まったり、どこからどのように学習したらいいかわからない等、どのような質問でも疑問でも構いません。
プログラマでもHTMLやCSSの理解度は重要
PHPプログラミング学習はもちろん、HTML5、CSS3、BootStrap、JavaScript、jQueryなどのサポートも行っていますのでお気軽にご相談ください。
定数 とは?
定数とは、変数と同様データを保存しておく入れ物です。
変数との違いは、一度入れたデータは後から変更できない点です。
一度定義した変数を変更するとエラーとなります。
変数については「PHP 変数の使い方」を参照ください。
定数 の基本
まず、変数を利用したコードを紹介します。
1 2 3 4 5 | <?php $tax = 1.10; $price = 10000; $tax_in_price = $price * $tax; ?> |
消費税率、税抜価格を変数に代入しています。
変数は最後に代入された値が優先(上書き)されるので、$taxが途中で変わってしまう可能性があります。税率が変更されることは頻繁には無いので、これを変更のできない定数に置き換えます。
命令 | 定数名 | 演算子 | 値 | セミコロン |
---|---|---|---|---|
const | TAX | = | 1.10 | ; |
1 2 3 4 5 | <?php const TAX = 1.10; $price = 1000; $tax_in_price = $price * TAX; ?> |
関数名 | 定数名(第1引数) | カンマ | 値(第2引数) | セミコロン |
---|---|---|---|---|
define( | ‘TAX’ | , | 1.10 | ); |
1 2 3 4 5 | <?php define( 'TAX' , 1.10 ); $price = 1000; $tax_in_price = $price * TAX; ?> |
const と define の違い
constは命令、defineは関数となります。
const命令は、PHP 5.3 から利用可能です。PHP 5.2 以前の環境ではdefine関数を利用します。
現在、PHP5のサポートは終了しPHP7が主流ですのでconstを覚えておくことをお勧めします。
関数に関しては「PHP 関数の基本」で解説しますのでそちらを参照してください。
定数上書き時のエラー
1 2 3 4 | <?php const TAX = 1.08; const TAX = 1.10; ?> |
上記のように定数を再度宣言するとエラーとなります。
PHP Notice: Constant 定数名 already defined in ファイルへのパス/ファイル名.php on line エラーの行数
定数の命名規則
規則は変数と同様で決まりはありませんが、視覚上(見た目で変数とわかる)の理由から英大文字とアンダースコア(_)区切りで記述することをお勧めします。
1 2 3 4 | <?php const FILE_PATH = '../../files/'; const TAX_METHOD = 1; ?> |
S.E->お勧め記事;
- PHPフレームワーク「Laravel」ディレクティブ-繰り返し処理(ループ処理)-
- Shopify APIを利用して在庫管理を行う
- CrowdWorks 提案後、受注に繋がりました。提案〜契約までの流れを解説
- PHP フレームワーク Laravel ディレクティブ – ループ変数 $loop –
- Panic Nova 購入から1年が過ぎライセンスの更新時期の注意点
- プログラマー になる為に必要な プログラミング以外 の知識・スキル
- XSERVERにSSHを利用してLaravel環境を構築する
- macOS Monterey にアップデート後、composerやhomebrewでenv: php: No such file or directoryが出る
- CrowdWorks いつの間にか「プロクラウドワーカー」になっていた