PHP 检查 DateTime 的实例?
Posted
技术标签:
【中文标题】PHP 检查 DateTime 的实例?【英文标题】:PHP check for instance of DateTime? 【发布时间】:2012-03-23 01:14:12 【问题描述】:在我的 DateTime 类的例子中,这是检查对象是否是类的实例的唯一方法吗?
$cls = ReflectionClass("DateTime");
if (! $cls->isInstance( (object) $var ) )
// is not an instance
对我来说似乎有点沉重。
【问题讨论】:
另请参阅:How to know what class is an object instance of? (php5)(并非真正重复) 【参考方案1】:你可以试试instanceof
Docs...
if ($var instanceof DateTime)
// true
另见is_a
Docs:
if (is_a($var, 'DateTime'))
// true
【讨论】:
伙计,我在 google 上没有找到任何关于那个的 .. :/ 谢谢!【参考方案2】:你可以像这样使用 get_class 函数:
<?php
$a = new DateTime();
if (get_class($a) == 'DateTime')
echo "Datetime";
【讨论】:
@redolent 如果您使用 Symfony 或其他使用命名空间的框架,您可能需要在文件顶部声明use \DateTime
以使其在根命名空间中查找 DateTime
(不是您应用的命名空间)。【参考方案3】:
instanceof呢
【讨论】:
【参考方案4】:if ($var instanceof DateTime)
【讨论】:
以上是关于PHP 检查 DateTime 的实例?的主要内容,如果未能解决你的问题,请参考以下文章
类 [DateTime('@-1')] 的 PHP 对象实例在另一个类中作为常量