我想使用同一段代码来管理多个实体,但它可能会有所不同,具体取决于它是否有某种方法。这就是为什么我需要检查对象是否有名称的方法。有什么办法吗?
最佳答案
你可以简单地使用is_callable
:
if (is_callable([$entity, 'methodName']))
doSomething();
更简洁的方法是使用 instanceof
检查对象的类。因为方法会来来去去,但是一个对象的特性是由它的类决定的:
if ($entity instanceof \Some\Bundle\Entity\Class)
doSomething();
关于php - 如何检查对象是否具有 Symfony2 中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32432562/