如何检查一个类是否在PHP中使用了一个特征?
请注意,一个特征可能使用其他特征,因此该类可能不会直接使用该特征。而且,该类也可以从父类继承,该父类是使用该特征的父类。
这是一个可以在几行内解决的问题,还是我必须做一些循环?
请注意,一个特征可能使用其他特征,因此该类可能不会直接使用该特征。而且,该类也可以从父类继承,该父类是使用该特征的父类。
这是一个可以在几行内解决的问题,还是我必须做一些循环?
class_uses() 函数将返回一个数组,其中包含该类使用的所有特征的名称,并通过向其传递类名或实例来工作。但是,您需要通过继承树“递归”才能使用所有特征,并通过每个特征
编辑
请注意,它提供了一个示例函数,演示如何在链接的PHP文档页面的评论部分进行此递归stealz at op dot pl
如果有人在使用Laravel框架时遇到这个问题,那有一个名为的帮助程序函数。class_uses_recursive()
https://laravel.com/docs/8.x/helpers#method-class-uses-recursive