Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php codeiginter-业务逻辑-控制器、模型或库?_Php_Codeigniter - Fatal编程技术网

Php codeiginter-业务逻辑-控制器、模型或库?

Php codeiginter-业务逻辑-控制器、模型或库?,php,codeigniter,Php,Codeigniter,在CI中,至少对我来说,视图必须是您的布局(html),控制器是结构,模型处理数据。构建应用程序时,业务逻辑将在哪里 我维护的控制器仅用于处理URL,因为我希望将结构与业务逻辑分离。我一直在使用我的模型来检索数据和处理数据(数据和业务逻辑),但如果我决定切换数据源,就会出现问题 始终引入一个库来分离主要业务逻辑是最佳做法吗?业务逻辑应该在您的模型中。模型不必在其对象中嵌入数据库连接。在模型层中,您可能希望有一些类专门用于业务逻辑,另一些类专门用于数据库连接等操作。一些框架,如Grails上的Gr

在CI中,至少对我来说,视图必须是您的布局(html),控制器是结构,模型处理数据。构建应用程序时,业务逻辑将在哪里

我维护的控制器仅用于处理URL,因为我希望将结构与业务逻辑分离。我一直在使用我的模型来检索数据和处理数据(数据和业务逻辑),但如果我决定切换数据源,就会出现问题


始终引入一个库来分离主要业务逻辑是最佳做法吗?

业务逻辑应该在您的模型中。模型不必在其对象中嵌入数据库连接。在模型层中,您可能希望有一些类专门用于业务逻辑,另一些类专门用于数据库连接等操作。一些框架,如Grails上的Groovy,建议对跨控制器重复的业务逻辑使用服务(检查用户是否经过身份验证)/模型对象