MVC 如何在 Codeignitor 中工作?
Codeignitor 基于 MVC 设计模式。我们将看到控制器、模型和视图如何工作并向用户显示结果。
控制器:顾名思义,它控制视图和模型之间的通信。所有 URL 都在 CodeIgniter 中使用控制器名称工作。现在让我们看看在创建新控制器时需要记住的一些要点。
- 当我们在控制器中创建一个类时,类的名称应该与文件名匹配,并且应该以大写开头,否则我们将在运行项目时收到错误消息。
- 一旦声明了类,我们就通过 extends 关键字继承 CI_Controller 的所有属性以使用 CI_Controller 的所有属性(通过PHP | OOP 中的通用术语来理解继承)。如果我们不扩展 CI_Controller 就不会有任何问题,但在这种情况下,我们将无法访问 CI_Controller 的任何属性。
- 每个控制器都有一个默认的函数索引,当我们在 URL 中只定义控制器名称时,它会自动运行。对于其余的功能,我们需要在 URL 中的控制器名称之后手动提及它。
Model: Model负责处理后端相关的查询。后端的所有查询或功能,如数据库、我们在模型中编写的 API。现在让我们看看在创建新模型时需要记住的一些要点。
- 当我们在模型中创建一个类时,类的名称应该与文件名匹配,并且应该以大写开头,否则我们将在运行项目时收到错误消息。
- 一旦声明了类,我们就可以使用 extends 关键字继承 CI_Model 的所有属性以使用 CI_Model 的所有属性
- 当我们在模型中创建一个函数,确保它应该是公开的,否则它在控制器中将无法访问。
- 要访问控制器中的模型,需要先加载它,加载模型后,我们可以在控制器中调用该特定模型的函数。下面是在控制器中加载模型的行。
$this->load->model('post_model');
下面是在自动加载中加载模型的行。 config 文件夹中提供的PHP文件。如果我们需要在我们的项目中全局使用模型,那么使用自动加载。 PHP.
$autoload['model'] = array('post_model');
视图:视图是 MVC 概念中的表示部分。无论在客户端使用 HTML、CSS 还是 JavaScript,文件中都将通过视图部分显示给用户。视图文件保存在应用程序/视图文件夹中。当模型从后端获取数据并将其返回给控制器时,控制器会在视图页面中传递所有数据。
牢记以上所有要点,我们将看到一个 MVC 如何在 CI 中工作的示例。
例子:
控制器文件:创建文件用户。在 Controller 文件夹中打开PHP并写下下面的代码。
load->model('usermodel');
}
public function index()
{
//access the getUsers method from usermodel
$data['users'] = $this->usermodel->getUsers();
$this->load->view('users_list', $data);
}
}
?>
模型文件:创建一个文件usermodel.在 Model 文件夹中打开PHP并写下下面的代码。
'First User', 'lastname'=>'First Name'],
['firstname'=>'Second User', 'lastname'=>'Second Name'],
['firstname'=>'Third User', 'lastname'=>'Third Name'],
] ;
}
}
?>
查看文件:创建一个文件users_list。在 View 文件夹中打开PHP并写下下面的代码。
User List
现在运行http://localhost/ci_tutorial/index。 PHP/Users在浏览器中。
输出: