PHPのクラス名の取得から名前の付け方まで徹底解説!

PHPの勉強を始めて聞く言葉だったクラス

クラス名についてもわからない事が沢山。

クラス名が重複したらどうするのか
・クラス名の付け方はどうするのか
クラス名を取得するには

上記のような事に悩んではいないでしょうか。

今回はPHPのクラス名について以下の内容でお話します。

【基本】クラスについて
【基本】クラス名の付け方
【実践】クラス名の取得
【実践】クラスを変数で初期化

わかりやすく解説しますので、最後まで読んで頂けると幸いです。

クラスについて

まずクラスとはなんでしょうか。

クラスはPHPファイルを作成して、以下のように記述します。

<?php
class SamuraiList
{
// 関数や変数を記述
}

複数の変数や、処理をまとめておく場所がクラスです。

なぜまとめる必要があるのか。

それは開発の規模が大きくなるほど機能も多く、複雑になります。

一括してまとめてわかりやすくしておく、というのがクラスの大きな役割です。

また、オブジェクト指向も理由の一つです。

オブジェクト指向について知りたい方は以下の記事をご覧ください。

【PHP入門】オブジェクト指向プログラミングを理解しよう!
更新日 : 2018年9月4日

クラス名のルール

クラス名を付ける時にどんな名前をつけたらよいのか初めは悩むでしょう。

ルールを決める

結論から言うと、英数字で書かれていれば動きます。

よってどんな名前でもよい、という事です。

しかし同じプロジェクトやシステム内ならばある程度ルールを決めておいた方がよいでしょう。

始めと区切りを大文字にする(例:SamuraiList)
複数形且つアンダースコア区切りにする(例:samurai_lists)

などです。

※フレームワークによっては初めから記述ルールが決まっている場合があります。

クラス名と関数名

また、関数(function)との名前付けとはルールを分けた方がよいと思います。

クラスは、扱うデータや機能名などがよいと言われます。

関数名には動作内容を入れるなど、動詞を含める事が多いです。

関数は以下のような名前付けになるでしょう。

function getSamuraiList(){
// 処理を記述
}

・get = 取得する
・StamuraiList = 侍リスト

のように関数に名前をつけます。

クラス名の重複について

同じクラス名を作成しないように気を付けます。

同じクラス名で別クラスを作成するとFatal errorが発生します。

勿論正常動作はしません。

クラス名の取得方法

クラス名を取得したいという場合も発生すると思います。

簡単な関数で取得できるので関数を紹介しましょう。

get_class関数です。

■使い方

get_class(★オブジェクトを指定);

【オブジェクトを指定】というのは、例えば「SamuraiList」というクラスの場合。

$samurai = new SamuraiList;

のように初期化をした後、オブジェクトを代入した変数を指定する事です。

get_class($samurai);

よって、上記のように記述するとクラス名が取得できます。

クラスを変数でオブジェクト生成(new)

クラスを呼び出す時に初期化(new)をすると思いますが、変数でクラス名を渡せるでしょうか

初期化(new)については以下を参考にしてください。

【PHP入門】newの使い方まとめ
更新日 : 2017年6月25日

変数でクラス名は渡すことは可能です。

以下に通常版と変数版の初期化の記述を示します。

// 通常のnew
$samurai = new SamuraiList;

// 変数を使ったnew
$class_name = "SamuraiList";
$samurai = new $class_name;

呼び出すクラスを条件によって変更したいなどの場合に便利です。

まとめ

今回はPHPのクラス名についてお話しました。

クラスの事は学んでも、クラス名について意識的に勉強する機会は少ないかもしれません。

名前とはいえ色々な決まり事やルールが存在する事も知って頂きたいです。

それでは、また。

LINEで送る
Pocket

最短でエンジニアを目指すなら侍エンジニア塾

cta_under_bnr

侍エンジニア塾は業界で初めてマンツーマンレッスンを始めたプログラミングスクールです。これまでの指導実績は16,000名を超え、未経験から数多くのエンジニアを輩出しています。

あなたの目的に合わせてカリキュラムを作成し、現役エンジニア講師が専属であなたの学習をサポートするため効率よく学習を進めることができますよ。

無理な勧誘などは一切ありません。まずは無料体験レッスンを受講ください。

無料体験レッスンの詳細はこちら

書いた人

つぶらや

つぶらや

独学PG&SE、東京在住30代女性。
誰でもプログラマーになれるがモットーで、わかりやすい記事を目指しています。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説