PHP如何检查是否为DateTime实例?

53

这是检查对象是否为一个类的实例的唯一方法吗?在我的情况下,是DateTime类的实例吗?

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

对我来说似乎有点重。


请参阅:如何知道一个对象实例属于哪个类?(php5)(并非真正的重复内容)。 - hakre
4个回答

160

6
哎呀,我用谷歌没找到关于那个的任何信息... :/ 谢谢! - Niklas R

10
如果($var instanceof DateTime)

7
您可以像这样使用 get_class 函数:
<?php

    $a = new DateTime();
    if (get_class($a) == 'DateTime') {
        echo "Datetime";
    }

5
如果你使用Symfony或其他使用命名空间的框架,你可能需要在文件顶部声明 use \DateTime,以使其在根命名空间(而非你的应用程序命名空间)中查找 DateTime。请注意不要改变原意。 - Chadwick Meyer

5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接