比如我要写一个用户验证(CheckUser),我可以写在Common的function.php中,也可以写在Model里的CheckUserModel.class.php里。他们有什么区别?
function.php里面是放一些功能函数, 一般我们会在随便什么地方就使用 xyz($param) 这样的方式调用;
而Model中, 则是与我们的事务处理有关的, 一般来说和我们处理的对象或者流程紧密相关, 而且Class中定义的函数和变量自身也高端相关, 针对性更强.
就你说的用户验证为例, checkUser函数不是简单一个功能, 他需要读取数据库(调用Model), 可能还有一些我们一般都会用到的相关的函数(比如getUser, getUserGroup等), 各函数还会有公用的变量和一些定义(比如实例化的时候公用的构造函数, 还有比如UID等变量可能也需要共用), 所以, 理解成一个简单的功能(function肯定是不合适的), 所以还是建议放在Model里面.
函数和方法的区别
函数,你可以当做一个算法的实现。函数是单独存在的,也就是面向过程部分定义的。
方法,则可以当做一个业务逻辑的实现。方法是依赖于类存在的,也就是面向对象中定义的。