我在CodeIgniter框架中的辅助函数中使用了数据库查询。
假设一个数据库有很多表,例如学校,学生,...等等,应用程序中需要执行常见任务,例如为表中的每个条目生成随机唯一ID,检索整个需要来自表格的匹配行的行,...等。
现在,我们可以为数据库的各个模型中的每个任务编写函数,例如,
在 School_model :
class School_model extends CI_Model
{
// some code ...
function generateID()
{
// code to generate unique id by checking the database
}
// some code ...
}
和 Student_model :
class Student_model extends CI_Model
{
// some code ...
function generateID()
{
// same code to generate unique id except the table name
}
// some code ...
}
或我们可以将 table_name 作为参数传递给辅助函数:
function generate_ID( $table_name )
{
// code to genetrate unique id by checking in $table_name
}
后来的流行代码重复编码(DRY)。但是在模型之外的函数中使用数据库查询是一种很好的做法。
答案 0 :(得分:2)
我认为,扩展Codeigniter核心是更好的方法。
class MY_Model extends CI_Model {
您可以在核心模型中编写function generate_ID( $table_name ){
最后使用MY_Model扩展您的模型
class Student_model extends MY_Model