控制器
新建控制器
依据 http://www.example.com/[控制器]/[方法]/[参数] 来新建控制器
[方法]不填则为控制器的index方法
[参数]不填则为默认参数
vim application/controllers/Pages.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Pages extends CI_Controller
{
public function view1($page = 'home')
{
if (!file_exists(APPPATH . 'views/pages/' . $page . '.php')) {
show_404();
}
$data['title'] = ucfirst($page);
$this->load->view('templates/header', $data); # $data 传递变量给视图
$this->load->view('templates/' . $page); # 此处不用再加$data 视图也能拿到变量
}
}创建一个和文件名一样的类,然后继承 CI_Controller 类
创建一个方法,要是需要传递参数,就在方法后面加上参数
载入视图时,要是视图文件的拓展名为.php,那么可以省略拓展名
当一次性载入多个视图的时候,只需在第一个视图传入数据就可以了
视图
新建视图
vim application/views/templates/header.php
<html>
<head>
<title>CodeIgniter Tutorial</title>
</head>
<body>
<h1><?php echo $title; ?></h1>vim application/views/templates/home.php
hello world现在访问 http://www.example.com/pages/view1
修改默认控制器
修改 application/config/routes.php 文件的 $route['default_controller']
模型
设置数据库参数
修改 application/config/database.php 文件的 $db['default']
新建模型
application/models/News_model.php
<?php
class News_model extends CI_Model {
public function __construct()
{
$this->load->database();
}
}创建一个和文件名一样的类,然后加载 CI_Model 类
其它
设置网站的根 URL
修改 application/config/config.php 文件的 $config['base_url']
添加 URL 后缀
修改 application/config/config.php 文件的 $config['url_suffix']
如 $config['url_suffix'] = '.html'
移除 URL 中的 index.php(nginx)
修改 application/config/config.php 文件的 $config['index_page'],值改为空
location / {
try_files $uri $uri/ /index.php;
}修改system 和 application 目录位置
system 和 application 目录都应该放置在 Web 根目录之外,然后修改 index.php 文件中的 $system_path 和 $application_folder 为文件夹新的位置
views 目录要是想保持公开,则可以将其移出 application 目录,并修改index.php文件中的$view_folder为文件夹新的位置
设置全局常量
在 application/config/constants.php 文件的最下方自定义添加常量
define('STATIC_URL', 'http://www.example.com');载入辅助函数
辅助函数需要先载入才能使用
在控制器中手动载入
$this->load->helper('name');name 为辅助函数名
- 自动载入
修改 application/config/autoload.php 文件的 $autoload['helper']
URL 辅助函数
比较常用,建议自动载入
- site_url:获取url参数段路径
- base_url:
application/config/config.php中设置的路径或者根路径 - redirect():跳转
拓展自定义函数
放在system/core/Common.php里面
Common.php里面的函数将会自动加载,并且可以全局使用