小编给大家分享一下PHP的CI框架怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
专注于为中小企业提供网站建设、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业金牛免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
CI是PHP的一个框架,使用该框架可以使得我们的代码更简洁,具有较高的可维护性。CI框架是基于MVC进行使用的。MVC是简称,M是指模型(Model),通常是用于处理数据,与数据库的打交道的。V是指视图(View),是用来定义如何显示数据以及其他内容的。C是指控制器(Controller),是处理模型和视图的工具。我们的CI框架是基于MVC的,我们将程序分为模型,视图和控制器三个部分。
上次,我们已经用php完成了一个小程序,这次就把这个小程序整合为CI框架。
index.php是入口文件,入口文件是不能改动的。我们只需要写好控制器,就可以通过调用模型和视图来访问页面了。
下面就是该程序整合到CI框架的代码:
Controller
project.php
class project extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->model('project_model');
}
public function index()
{
$this->load->view('project_view');
}
//保存数据的的方法
function save(){
//调用project_model中的save_project方法
$this->project_model->save_project($_POST['project_name']);
//获取插入的id
$id = MySQL_insert_id();
$content = $_POST['context'];
//替换字符
$content = str_replace(".",".#",$content);
$content = str_replace("?","?#",$content);
$content = str_replace("!","!#",$content);
//分解内容
$str = explode("#",$content);
//获取总数
$count = count($str)-1;
$items = null;
for($i = 0 ; $i < $count ; $i++) {
$items .= "('{$str[$i]}',{$id})".',';
}
$items = rtrim($items,',');
$this->project_model->save_projectsentence($items);
$this->getdatas();
}
//显示数据
function getdatas(){
$list = $this->project_model->getdatas();
foreach($list->result_array() as $v){
$result[] = $v;
}
$data['list'] = $result;
$this->load->view('xianshi',$data);
}
}
?>
Model
project_model.php
//require_once 'common_model.php';
/**
增加上面类库返回结果集是以数组形式返回,原生态ci类库返回的结果集是object对象
*/
class project_model extends CI_Model{
function __construct(){
parent::__construct();
}
M
//向project表插入name字段方法
function save_project($project){
$sql="insert into project(name)VALUES('{$project}')";
return $this->db->query($sql);
}
//向project_sentences表插入sentence和id字段方法
function save_projectsentence($items){
$query = "insert into project_sentence (sentences,id)values{$items}";
return $this->db->query($query);
}
//显示name与sentence字段
function getdatas(){
$sql = "select p.name,ps.sentences from project p join project_sentence ps on p.id = ps.id";
// return $this->_query($sql);
return $this->db->query($sql);
}
}
?>
View
因为这里有两个网页,所以相对于CI,我们这里应有两个视图。分别是project_view(输入页面)和xianshi.php(显示页面)。
project_view
xianshi.php
Project_name | Sentences |
---|---|