繁体   English   中英

如何在PHP OOP中处理静态方法?

[英]How to deal with static methods in PHP OOP?

我有一个名为LClass的超级课程。 然后我创建了其他类,扩展了LClass 例如,这是数据库中表的类。 userorder等......)在每个类中,我使用一些static function getRecordById($id) ,它返回一些数组。 这些函数之间的区别在于它们使用不同的表名来执行。 我想把这个static function getRecordById($id)放在LClass 问题是,该函数是静态的,为此我需要设置一些静态变量,然后再执行$someUser = user::getRecordById($id)
还是其他任何建议?

专门使用静态方法编程是不是面向对象的程序设计,它的“类为本”的节目。 它与带有一小部分命名空间的过程代码基本相同。 静态方法有其用途,但它是有限的。 静态方法永远不应该完成类的主要工作。

阅读如何使用Statics杀死可测试性

避免静态方法。 就如此容易。

关于您对原始问题的评论,请考虑以下代码示例:

$user = new User($id);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM