php – Yii和静态函数

拥有很多静态函数是不好的做法吗?我正在使用Yii框架,我意识到我的模型类中有很多静态函数.我把与User有关的所有函数都放到了UsersModel中(我也对其他模型做了同样的事情),但我最终得到了很多静态函数.只是想知道你们如何处理这个问题.很多这些函数只是查询构建器函数而不是延迟加载,因为我需要提高数据库性能.

示例功能:

User::getUserFromCampaign(1)
User::getUsersNotInCamapaigns()
User::isAdmin()

最佳答案 您可以做的不是使用静态函数,而是在需要这些方法的模型中实例化User类的对象(可能不是静态类),并直接使用对象的方法.

这也意味着这些方法只会加载到需要它们的对象上,而不是“全局”.

这是一个很好的答案:https://softwareengineering.stackexchange.com/questions/98083/cant-i-just-use-all-static-methods

点赞