53

私の DateTime クラスの場合、これがオブジェクトがクラスのインスタンスであるかどうかを確認する唯一の方法ですか?

$cls = ReflectionClass("DateTime");
if (! $cls->isInstance( (object) $var ) ) {
    // is not an instance
}

私には少し重いようです。

4

4 に答える 4

152

instanceofあなたはDocsを試すことができます...

if ($var instanceof DateTime) {
  // true
}

is_aドキュメントも参照してください:

if (is_a($var, 'DateTime')) {
  // true
}
于 2012-03-05T15:03:46.580 に答える
10

if ($var instanceof DateTime)

于 2012-03-05T15:03:49.620 に答える
7

次のように get_class 関数を使用できます。

<?php

    $a = new DateTime();
    if (get_class($a) == 'DateTime') {
        echo "Datetime";
    }
于 2012-03-05T15:08:12.267 に答える
5

インスタンスオブはどうですか

于 2012-03-05T15:06:41.697 に答える