我几天前就开始处理CI了,所以我对这一切都很陌生。我需要将CI View与另一个常见(普通)PHP文件或HTML文件连接起来。这可以以任何方式完成吗?例如
答案 0 :(得分:0)
假设您的普通php文件:normal.php(将此文件放在视图部分中)
然后您需要做的就是创建一个扩展CI_Controller的控制器,并将其指定为加载normal.php
Class Normal extends CI_Controller{
function index(){
$this->load->view('normal');
}
}
答案 1 :(得分:0)
如果您的普通php文件只是一个视图文件,您可以使用
$this->load->view('your_file',$array_of_any_data_you want_to_pass_in_your_view);
然而要包含任何你可以简单使用的php文件include
<?php include 'my_php_file.php';?>
答案 2 :(得分:0)
当然可以。
首先,您需要在应用程序目录下的controllers文件夹中创建控制器文件,例如。 application / controllers / frontpage.php并添加:
Class Frontpage extends CI_Controller{ public function test_view() { $this->load->view('layouts'); }
和查看部分,您可以将所有常见的HTML布局文件放在您的views目录中。例如application / views / layouts.php,application / views / style.css等
您可以使用base_url()
功能。例如:
<link href="<?php echo base_url(); ?>application/views/style.css" rel="stylesheet">
但是,如果您创建样式目录并将所有css文件放在那里,那就更好了。 最后,您可以从localhost / yourapp / index.php / test_view
访问它 希望有所帮助。答案 3 :(得分:0)
您需要了解请求的生命周期。所以假设您想要提供一个名为about.php的HTML视图(其中包含HTML代码和一个名为$ app_version的php变量)。
首先在application / controllers文件夹中创建控制器。例如application.php
class Application extends CI_Controller {
}
然后为控制器创建一个方法
class Application extends CI_Controller {
public function about_handle() {
//calculate and set any data you wish to pass in your view
$this->data['php_version'] = '1.0';
//then load the view
$this->load->view('about', $data); //supposing there is a file named about.php in your application/views directory
}
不要忘记在application / config / routes.php文件中创建一个路由
$route['about'] = 'application/about_handle';
您的观点可能是这样的
<h1>About this application</h1>
<h2>Current version <?= $php_version ?></h2>
现在,在http://website.ex/about
或http://website.ex/index.php/about
的每个请求中(如果您尚未禁用“index.php”CIgniter的默认值),您将提供about.php视图