get_class: オブジェクトのクラス名を返す (クラス/オブジェクト関数) - PHPプロ!マニュアル

PHPマニュアル

get_class: オブジェクトのクラス名を返す

get_class

(PHP 4, PHP 5)

get_classオブジェクトのクラス名を返す

説明

string get_class ([ object $object = NULL ] )

指定した object のクラス名を取得します。

パラメータ

object

調べるオブジェクト。クラスの内部ではこのパラメータを省略することもできます。

返り値

オブジェクト object がインスタンス であるクラスの名前を返します。object がオブジェクトでない場合にはFALSEが返されます。

クラスの内部で object を省略すると、 そのクラスの名前を返します。

エラー / 例外

オブジェクト以外に対して get_class() をコールすると、 E_WARNING レベルのエラーが発生します。

変更履歴

バージョン 説明
5.3.0 以降 NULLobject のデフォルトとなりました。 したがって、NULLobject に渡すのは何も指定しないのと同じ意味ということになります。
5.0.0 以降 クラス名はその本来の表記で返されます。
5.0.0 以降 object パラメータは、 オブジェクトのメソッドからコールされた場合はオプションとなります。

例1 get_class() の使用例

<?php

class foo {
    function 
name()
    {
        echo 
"My name is " get_class($this) , "\n";
    }
}

// オブジェクトを生成
$bar = new foo();

// 外部からコール
echo "Its name is " get_class($bar) , "\n";

// 内部からコール
$bar->name();

?>

上の例の出力は以下となります。

Its name is foo
My name is foo

例2 get_class() のスーパークラスでの使用例

<?php

abstract class bar {
    public function 
__construct()
    {
        
var_dump(get_class($this));
        
var_dump(get_class());
    }
}

class 
foo extends bar {
}

new 
foo;

?>

上の例の出力は以下となります。

string(3) "foo"
string(3) "bar"

参考


PHPマニュアル



Pick Up Q&A

Q
マジッククォートとmysql_real_escape_string
 このエントリーをはてなブックマークに追加 
A
magic_quotes_gpcでは、SQLインジェクション対処は十分できません。主な理由として、以下が上げられます。 ・magic_quotes_gpcは文字コードを考慮しないで処理するので、Shift_JISを使っている場合、SQLインジェ...

>>続きを読む

SQLインジェクション対策は時と場合で使う関数が変わります。その時にあったものを使いましょう。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)