Rom*_*man 12 php model-view-controller controller model codeigniter
我对MVC框架(codeIgniter)中的控制器和模型感到困惑.我清楚地知道控制器方法调用视图和模型方法与数据库交互.但是,我对以下类型的方法感到困惑,这些方法由控制器中的方法调用.
hash_password //returns hash password.
valid_email //validates email format and return true or false
is_logged //check if session has a variable, returns true or false
generate_random_string //generates and hashes a random string
Run Code Online (Sandbox Code Playgroud)
它们应该放在控制器还是模型中?
目前,我将所有上述功能放在控制器中.这是对的吗?
我认为is_logged应该放在模型中User.请注意,User您可能是您的案例中的客户或您为服务用户建模的任何类.
的valid_email和generate_random_string更或效用函数少,你可以在一个地方Utility或Utilities模式,让这些都是在你的应用各种控制器可重复使用.
的hash_password,可以被放置在任一User模型或Utility模型.我更倾向于将它放在Utility模型中,因为它具有散列函数,用户无需关心.但是,我可以想象,否则会有争论.
以下SO问题(虽然对于不同的框架)也可以作为经验法则:
在Zend Framework 1.10中放置自定义函数的位置
| 归档时间: |
|
| 查看次数: |
6069 次 |
| 最近记录: |