UPDATE:2019年09月18日
PHP の 識別子
- 識別子は 名前 のこと
- 識別子は、変数名 関数名 定数名 クラス名 で使用
- 識別子 1 文字目
[ a~z ](大文字小文字区別される) or
[ A~Z ](大文字小文字区別される) or
[ Ox7F~0xFF ](ASCIIコード) or
[ _ ](アンダーバー) - 識別子 2 文字目以降
1 文字目+[ 0~9 ]数字が追加
識別子とは
- 識別子は「名前」のこと
識別子とは「名前」のことです。プログラム中で変数や関数、クラスに名前を付けますが、その名前が識別子になります。
プログラムを記述する際、名前を付ける作業は多く、また、非常に重要になります。識別子が長いとコードが長くなりますし、読み辛くもなります。短すぎると他の識別子と被ってしまう場合があります。
識別子は、その名前から内容がどのようなものなのか連想出来ると良いでしょう。変数名であれば、その変数がどのような値を保持しているのか、クラス名や関数名であれば、それらのクラスや関数がどのような機能を保有しているのかなど。識別子から内容や機能が連想できると、コードが読み易くなります。
識別子を考えるのは慣れです。また、良いコードを参考にして、どのような識別子が付けられているのか勉強してみるのがよいでしょう。
ただ、識別子を考えるのに時間が掛かりすぎては良くありませんので、適度な時間で適切な識別子を考えるようにしたいですね。
識別子の命名規則
- 1 文字目使用できる文字
[ a~z ] 大文字小文字は区別される
[ A~Z ] 大文字小文字は区別される
[ Ox7F~0xFF ] コードを持つ文字
[ _ ] アンダーバー
- 2 文字目以降
[ 0~9 ]数字が上記に加わる
最初の1文字目として使用できるのは、「アルファベットの大文字と小文字」、「アンダースコア( _ )」、「ASCIIコードで、( 0x7F )から( 0xFF )までの文字」のいずれかのみとなります。アルファベットは大文字小文字が区別されます。
2番目以降には、1文字目で使用できる文字に加えて「数字」も使用できます。
識別子の使用
- 識別子は、変数名 関数名 定数名 クラス名 で使用する
- 変数名
識別子で作成
最初は「$」記号で始まる
大文字小文字が区別される - 関数名
識別子で作成
大文字小文字が区別されない - 定数名
識別子で作成
大文字小文字が区別される
習慣としてすべて大文字を使用 - クラス名
識別子で作成
大文字小文字が区別されない
PHPでは、変数名、関数名、定数名、クラス名として識別子を使用します。
変数名
変数名は識別子で作成します。詳細はこちらをご参照下さい。
※最初は「$」記号で始まります。
※変数名は大文字小文字が区別されます。
1 2 3 4 5 6 7 | <!-- サンプルコード --> <?php $Name = 'Tom'; echo $Name."<br>\n"; $name = 'Bob'; echo $name."<br>\n"; ?> |
結果は
Bob
となります。
関数名
関数名は識別子で作成します。詳細はこちらをご参照下さい。
※関数名は大文字小文字が区別されません。
1 2 3 4 5 6 7 8 9 | <!-- サンプルコード --> <?php function FunctionName(){ echo '関数の定義'; } function functionname(){ echo '関数の定義'; } ?> |
定数名
定数名は識別子で作成します。詳細はこちらをご参照下さい。
※定数名は大文字小文字が区別されます。
※習慣としてすべて大文字で記述します。
1 2 3 4 5 | <!-- サンプルコード --> <?php DEFINE_NAME = '定数名'; echo DEFINE_NAME; ?> |
結果は
となります。
クラス名
クラス名は識別子で作成します。詳細はこちらをご参照下さい。
※クラス名は大文字小文字が区別されません。
1 2 3 4 | <!-- サンプルコード --> <?php $class = new ClassName(); ?> |
識別子の命名規則の例
アッパーキャメルケース(Upper Camel Case)(パスカルケース)
各単語の頭文字(先頭文字)を大文字で記述します。大文字と小文字の凹凸がラクダのコブのように見えることからキャメルケースと呼ばれます。Java、Python、PHP などの言語で クラス名 等で採用されています。
1 2 3 | VarVarVar FunctionFunctionFunction ClassClassClass |
ローワーキャメルケース(Lower Camel Case)
最初の単語の頭文字は小文字で記述し、以降の各単語の頭文字(先頭文字)を大文字で記述します。大文字と小文字の凹凸がラクダのコブのように見えることからキャメルケースと呼ばれます。Java、C#、Swift、JavaScript などの言語で、変数名や関数名 等で採用されています。
1 2 3 | varVarVar functionFunctionFunction classClassClass |
スネークケース(snake case)(アンダースコア記法)
すべての単語を小文字で記述し、各単語の間にアンダースコアを挿入して繋ぎ合わせます。データベースのテーブル名やフィールド名などで使用されます。WordPressでは変数名や関数名の命名規則として使用しており、PHPのフレームワークcodeigniterでも、クラス名、メソッド名、変数名などで採用されています。
c、C++、Python、PHP などの言語で、変数名や関数名 等で利用されています。
1 2 3 | var_var_var function_function_function class_class_class |
コンスタントケース(constant case)
すべての単語を大文字で記述し、各単語の間に「 _ (アンダースコア)」を挿入して繋ぎ合わせます。定数名などで使用されます。多くの言語で定数名として採用されています。
1 2 3 | VAR_VAR_VAR FUNCTION_FUNCTION_FUNCTION CLASS_CLASS_CLASS |
ケバブケース(kebab case)
各単語の間に「 – (ハイフン)」を挿入して繋ぎ合わせます。HTML や CSS で採用されています。
1 2 3 | var-var-var function-function-function class-class-class |
システムハンガリアン記法
一番最初にデータ型の頭文字を小文字で挿入し、以降をアッパーキャメルケース(各単語の頭文字を大文字で記述)で記述します。例えば数値であれば integer の i を頭文字に挿入します。文字列であれば string の s 、浮動小数点であれば float の f となります。
1 2 3 | iScore sName fRoot2 |
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | <!-- サンプルコード --> <h3>関数名</h3> <?php function FunctionName(){ echo 'FunctionNameが識別子になります。'; } //実行 FunctionName(); ?> <h3>変数名</h3> <?php $varName = 'varNameが識別子になります。'; echo $varName; ?> <h3>定数名</h3> <?php define('_DEFINE_NAME', '_DEFINE_NAMEが識別子になります。'); echo _DEFINE_NAME; ?> <h3>クラス名</h3> <?php class ClassName{ function print_identifier(){//print_identifier()を定義 echo 'ClassNameが識別子になります。'; } } //クラスの呼び出し 変数に格納 $className = new ClassName(); //$classNameのprint_identifier()を参照するという意味 $className->print_identifier(); ?> |
FunctionNameが識別子になります。
変数名
varNameが識別子になります。
定数名
_DEFINE_NAMEが識別子になります。
クラス名
ClassNameが識別子になります。
タグ(=記事関連ワード)
日付
最終更新日:2019年09月18日