ホーム > PHPの文法 > 1 基本構造 > PHP の 大文字 小文字 の 区別 の なし/あり について
PHPリファレンス

UPDATE:2020年06月25日

PHP の 大文字 小文字 の 区別 の なし/あり について

PHP の 大文字 小文字 の 区別 の なし/あり について | wepicks!
PHP4.3 PHP5 PHP7

PHP の 大文字 小文字 の区別 簡単めとめ

1 Minute Note

区別 なし

  • 関数名
  • クラス名
  • 組み込みキーワード名
    (echo,while,class,for…)
区別 あり

  • 変数名
  • 定数名
PHP では 大文字 小文字 を 区別しない場合区別する場合 があるので注意しましょう!区別 なし は、関数名クラス名キーワード名 で、区別 あり は、変数名定数名です。それでは詳しく確認してみましょう。

大文字小文字 区別 なし の場合

POINT
区別 なし

  • 関数名
  • クラス名
  • 組み込みキーワード名(echo,while,class,for,,,,)

関数名(自身で作成するユーザー定義関数名と PHP で予め組み込まれている定義済み関数名のことです。) 、クラス名(自身で作成するユーザー定義クラス名と PHP で予め組み込まれている定義済みクラス名のことです。)、そしてecho や、if、while、class、ture、false などといった組み込みキーワード では大文字/小文字の区別はされません。キーワードは予約語とも言います。組み込みキーワードについてはこちらを参照下さい。

関数名

関数名は関数定義時も呼び出し時も大文字小文字を区別しません。

ユーザー定義関数名

例えば、function echo_hello(){・・・} というユーザー定義関数を作成します。この関数を呼び出す場合、呼び出し時に ECHO_HELLO、Echo_Hello、ECHO_hello というような記述をしても、すべては同じ意になり、呼び出し可能です。作成時も function ECHO_HELLO(){・・・} や function Echo_Hello(){・・・} などと記述しもて同じ意になります。 関数名の詳細はこちらをご参照下さい

結果は

Hello World!
Hello World!
Hello World!

となります。

注意することは、大文字小文字が区別されないので、定義時に、function echo_hello( ) {・・・} と function ECHO_HELLO( ) {・・・} の2つを定義した場合、同じ関数名の関数が2つ定義されていることになるので、「PHP Fatal error: Cannot redeclare ECHO_HELLO()」というエラーが発生します。

定義済み関数名

PHP で予め用意されている定義済み関数の関数名においても大文字小文字を区別しません。

定義済み関数の is_array は大文字でも小文字でも呼び出せます。
定義済み関数一覧を取得するには、 get_defined_functions() で呼び出せます。

クラス名

ユーザー定義クラス名

クラス名も関数名と同じです。例えば、class class_name {・・・} というユーザー定義クラスを作成します。 このクラスを呼び出す場合、CLASS_NAME、Class_Name、CLASS_name というような記述をしても、すべては同じ意になり呼び出し可能です。クラス名の詳細はこちらをご参照下さい

結果は

Hello World!
Hello World!
Hello World!

となります。
ユーザー定義クラス名もユーザー定義関数名と同じように、クラス定義時に、class class_name{・・・} と class CLASS_NAME{・・・} と2つを定義した場合、同じクラスが2つ定義されていることになるので、「PHP Fatal error: Cannot redeclare class CLASS_NAME」というエラーが発生します。

定義済みクラス名

PHP で予め用意されている定義済みクラスのクラス名においても大文字小文字を区別しません。定義済みクラスの DateTime() を大文字と小文字で呼び出してみます。

結果は

2020-01-01 00:00:00
2020-01-01 00:00:00

となります。

定義済みクラス一覧を取得するには、 get_declared_classes() で呼び出せます。

組み込みキーワード

組み込みキーワードも大文字小文字の区別がされません。 echo という 組み込みキーワード の場合、echo、ECHO、Echoの3つは同じ意になります。

結果は

hello, world
hello, world
hello, world

となります。

大文字小文字 区別 あり の場合

POINT
区別 あり

  • 変数名
  • 定数名

変数名定数名大文字小文字が区別されます

変数名

以下の例の3つの変数名はそれぞれ異なる変数名になります。変数名は「$ドル記号」の後に変数名が続く形式で記述されます。変数名についての詳細はこちらを参照下さい

結果は

田中さん
鈴木さん
佐藤さん

となります。

大文字小文字 が区別されるので、変数を $name = '田中さん'; と定義して echo $NAME; で呼び出すと、「PHP Notice: Undefined variable: NAME」というエラーが発生します。$NAME は定義されていない、というエラーです。

定数名

定数名と定数は define()関数 で定義します。定数は簡単な値を保持する名前(ID)です。簡単な値「=スカラー値:理論値、整数、浮動小数点数、あるいは、文字列」を格納します。定数名の詳細はこちらを参照下さい

結果は

特殊相対性理論 エネルギー(E) = 質量(m)×光速度(c)の 2乗
特殊相対性理論 エネルギー(E) = 質量(m)×光速度(c)の 2乗

となります。

定数名も大文字と小文字が区別されるので、例えば、define('E_M_C_2', '特殊相対性理論 エネルギー(E) = 質量(m)×光速度(c)の 2乗');と定義して、echo e_m_c_2."<br>\n"; と呼び出せば、単純に、「E_M_C_2」と文字列が表示されるだけです。

小文字 を 大文字 に変換

PHP では すべてのアルファベットの小文字を大文字に変換する関数 mb_strtoupper() が用意されていますので、大文字小文字関連としてご紹介します!

PHP4.3 PHP5 PHP7

mb_strtoupper() 書式
string 文字列 = mb_strtoupper('string $string');
  • パラメーター:「string $string 」アルファベットを大文字に変換する文字列を入力します。
  • 返り値:「string $string」すべてのアルファベットを大文字に変換した文字列を返します。

結果は

LET’S STUDY THE PHP PROGRAMMING!

となります。

大文字 を 小文字 に変換

逆に 大文字 → 小文字 にする関数 mb_strtolower() もあります。

PHP4.3 PHP5 PHP7

mb_strtolower() 書式
string 文字列 = mb_strtolower('string $string');
  • パラメーター:「string $string 」アルファベットを小文字に変換する文字列を入力します。
  • 返り値:「string $string」すべてのアルファベットを小文字に変換した文字列を返します。

結果は

let’s study the php programming!

となります。

サンプルコード

実行結果
組み込みキーワードの場合
hello, world
hello, world
hello, world

ユーザー定義関数名の場合
Hello World!
Hello World!
Hello World!

ユーザー定義クラス名の場合
Hello World!!
Hello World!!
Hello World!!

変数名の場合
田中さん
鈴木さん
佐藤さん

定数名の場合
特殊相対性理論 エネルギー(E) = 質量(m)×光速度(c)の 2乗
特殊相対性理論 エネルギー(E) = 質量(m)×光速度(c)の 2乗

小文字を大文字にする
LET’S STUDY THE PHP PROGRAMMING!

大文字を小文字にする
let’s study the php programming!

– サンプル Click Here ! –


タグ(=記事関連ワード)

タグ: ,

日付

公開日:2019年9月20日
最終更新日:2020年06月25日

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

https://wepicks.net/phpref-omozikomozi/trackback/

page top