PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

get_class - オブジェクトのクラス名を返す | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

get_class

(PHP 4, PHP 5, PHP 7)

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

説明

string get_class ([ object $object ] )

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

パラメータ

object

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

注意: Explicitly passing NULL as the object is no longer allowed as of PHP 7.2.0. The parameter is still optional and calling get_class() without a parameter from inside a class will work, but passing NULL now emits an E_WARNING notice.

返り値

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

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

If the object is an instance of a class which exists in a namespace, the qualified namespaced name of that class is returned.

エラー / 例外

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

変更履歴

バージョン 説明
7.2.0 NULL was removed as the default value for object, and is no longer a valid input.
5.3.0 NULLobject のデフォルトとなりました。 したがって、NULLobject に渡すのは何も指定しないのと同じ意味ということになります。

例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"

例3 Using get_class() with namespaced classes

<?php

namespace Foo\Bar;

class 
Baz {
    public function 
__construct()
    {

    }
}

$baz = new \Foo\Bar\Baz;

var_dump(get_class($baz));
?>

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

string(11) "Foo\Bar\Baz"

参考

  • get_called_class() - "静的遅延束縛" のクラス名
  • get_parent_class() - オブジェクトの親クラスの名前を取得する
  • gettype() - 変数の型を取得する
  • is_subclass_of() - あるオブジェクトが指定したクラスのサブクラスに属するか (あるいは指定したインターフェイスを実装しているか) どうかを調べる


忘却曲線を使ってこの関数を確実に記憶に残す

フォーラムで「get_class - オブジェクトのクラス名を返す」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | get_class - オブジェクトのクラス名を返す」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: