CodeIgniter入门——HelloWorld
CodeIgniter(CI)是一套给PHP网站开发者使用的应用程序开发框架和工具包。
初次接触,来一个HelloWorld~~~ ^_^
准备工作:
一、下载CI
官方网站:http://ellislab.com/codeigniter
CodeIgniter中国:http://codeigniter.org.cn/
可以从上面下载相关版本以及文档,我在这里下载使用的2.2.0版本。
二、安装CI
1.首先你得有php运行环境。如果是windows环境的话,可以使用WAMPPServer。Linux的话,可用LAMP。
2.解压CodeIgniter_2.2.0 到www目录。
三、检测是否安装成功
1.运行localhost/你的CodeIngiter项目名字
2.运行的结果应该看到如下:

上面说明的是如果要修改这个view文件,可以在application/views/welcome_message.php进行编辑,修改展示内容;
如果要修改controller文件,可以在application/controllers/welcome.php进行编辑。
建立HelloWorld:
1.找到application\controllers,新建文件helloworld.php;
2.新建类Helloworld(类名首字母大写),继承CI_Controller,编写函数index(),输出“HelloWrold!”;
具体代码如下:
<?php
class Helloworld extends CI_Controller{
function index()
{
echo 'HelloWorld!';
}
};
/* End of file helloworld.php */
/* Location: ./application/controllers/helloworld.php */
3.运行http://localhost/<你的CodeIngiter项目名>/index.php/helloworld

成功输出“HelloWrold!”,这是通过controller而不使用view输出了相关内容。下一步用view来控制输出的内容。
4.进入application\views ,新建helloworld_view.php,在里面编写html模板代码;
<html>
<head>
<title> HelloWorld </title>
<meta name=”Author” content=”">
<meta name=”Keywords” content=”">
<meta name=”Description” content=”">
</head>
<body>
view for HelloWorld!
</body>
</html>
5.修改controllers内HelloWorld的函数内容:
<?php
class Helloworld extends CI_Controller{
function index()
{
$this->load->view('helloworld_view'); //加载view内容的helloworld_view文件
}
};
/* End of file helloworld.php */
/* Location: ./application/controllers/helloworld.php */
6.访问查看,效果如下:

这就是使用controller调用view控制输出了内容。
7.接着用上model。
在models下新建一个php文件命名为helloworld_model.php(注意要小写),并在这个php文件中创建一个类:
<?php
class Helloworld_model extends CI_Model{
public function get_helloworld_view()
{
$helloworld_view = "HelloWorld!";
return $helloworld_view;
}
}
/* End of file helloworld_model.php */
/* Location: ./application/controllers/helloworld_model.php */
8.然后我们在controllers中打开helloworld.php,修改为:
<?php
class Helloworld extends CI_Controller{
function index()
{
$this->load->model('helloworld_model'); //加载model内容的helloworld_model文件
$data = array();
$data['helloworld_view'] = $this->helloworld_model->get_helloworld_view();
$this->load->view('helloworld_view', $data);
}
};
/* End of file helloworld.php */
/* Location: ./application/controllers/helloworld.php */
9.然后打开views下的helloworld_view.php,修改为:
<html>
<head>
<title> HelloWorld </title>
<meta name=”Author” content=”">
<meta name=”Keywords” content=”">
<meta name=”Description” content=”">
</head>
<body>
<h1>
<?php echo $helloworld_view;?>
</h1>
</body>
</html>
10.再次在浏览器地址栏输入http://localhost/<你的CodeIngiter项目名>/index.php/helloworld

这次整个流程为:controller从model中取得数据,传递给view显示出来。
--------------------------------------------------------------------------------------
CodeIgniter 是基于模型-视图-控制器这一设计模式的。MVC 是一种将应用程序的逻辑层和表现层进行分离的方法。在实践中,由于表现层从 PHP 脚本中分离了出来,所以它允许你的网页中只包含很少的脚本。
- 模型(Model)代表你的数据结构。通常来说,你的模型类将包含取出、插入、更新你的数据库资料这些功能。
- 视图(View)是展示给用户的信息。一个视图通常是一个网页,但是在 CodeIgniter 中,一个视图也可以是一个页面片段,如页头、页尾。它还可以是一个 RSS 页面,或任何其它类型的“页面”。
- 控制器(Controller)是模型、视图以及其他任何处理 HTTP 请求所必须的资源之间的中介,并生成网页。
CodeIgniter 在 MVC 使用上非常宽松,因此模型不是必需的。如果你不需要使用这种分离方式,或是发觉维护模型比你想象中的复杂很多,你可以不用理会它们而创建自己的应用程序,并最少化使用控制器和视图。
CodeIgniter入门——HelloWorld的更多相关文章
- RabbitMQ学习总结 第二篇:快速入门HelloWorld
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...
- Wix学习整理(1)——快速入门HelloWorld
原文:Wix学习整理(1)--快速入门HelloWorld 1 Wix简介 Wix是Windows Installer XML的简称,其通过类XML文件格式来指定了用于创建Windows Instal ...
- Flask入门HelloWorld
Flask入门HelloWorld Flask官网:http://flask.pocoo.org/ Flask中文翻译:http://dormousehole.readthedocs.io/en/la ...
- Windows Eclipse Scala的入门HelloWorld
[学习笔记] Windows Eclipse Scala的入门HelloWorld 有关带scala版本的eclipse4.7的下载, 你可以直接去: http://scala-ide.org/dow ...
- Springboot2.x入门——helloWorld
Springboot2.x入门--helloWorld 一.简介 1.1 Springboot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的 ...
- idea创建Scala入门HelloWorld
Scala开发环境的搭建 首先到Scala官网下载Scala网址为 https://www.scala-lang.org/download/ 找到下图所示位置:选择相对应的版本的Scala进行下载,这 ...
- Node.js开发入门—HelloWorld再分析
在Node.js开发入门(1)我们用http模块实现了一个简单的HelloWorld站点,这次我们再来细致分析下代码.了解很多其它的细节. 先看看http版本号的HelloWorld代码: 代码就是这 ...
- 8086汇编语言入门-HelloWorld
附件下载: http://pan.baidu.com/s/1i5R9qO9 密码:rfgk 80x86微处理器汇编语言编程.学习任何编程语言都免不了要跨越HelloWorld这道坎,面向机器的 ...
- RabbitMQ 入门 Helloworld
1.介绍 RabbitMQ 是信息传输的中间者.本质上,他从生产者(producers)接收消息,转发这些消息给消费者(consumers).换句话说,他能够按根据你指定的规则进行消息转发.缓冲.和持 ...
随机推荐
- Java、PHP训练场地选择成都传祺播客
传智播客选择九类基础: 1 有不怕炫耀实力,我们会爱一本书,是一个开源项目 2 领先的新技术,让我们的学生走在别人前面,首先推出Hadoop.Unity3D.Nginx. 3 课程广博的知识,深入的技 ...
- 小强的HTML5移动开发之路(50)——jquerymobile页面初始化过程
为了方便说明和更加直观的展示jquerymobile的页面初始化过程以及各个事件的触发过程,我绘制了一幅流程图: 图中用红色框圈起来的是界面中的事件,測试代码例如以下: <!DOCTYPE ht ...
- java实现大数相加问题
闲来没事.写了个acm中常常遇到的大数加减问题的java 解决代码,我想说.用java的BigInteger 非常easy. 大爱java!! 比如: 实现多组输入的大数加减问题: import ja ...
- #define XXX do{ XXX } while(0) 为什么使用
#define XXX do{ XXX } while(0) 为什么使用 时常会遇到一个非常"奇怪的宏定义", rt.(欧西巴...思考不够深刻啊, 皮鞭, 啪啪啪) 近期又遇到这 ...
- Android使用的开发MediaRecorder录制声音
至 Android 录制声音的应用,Android提供 MediaRecorder 类别.大约MediaRecorder可以参考一个特定的解释<Android开发之MediaRecorder类具 ...
- hdu 5101 Select(Bestcoder Round #17)
Select Time Limit: 4000/2000 MS (Java/Others) ...
- Java模式(适配器型号)
今天阅读Java该适配器模式,这里有一个小的总结和下谈感受.对于将来使用. 首先.让我们有关适配器先说说. 适应是“来源”至“目标”适应.其中连接这两个的关系是适配器.它负责“源”过度到“目标”. 举 ...
- cocos2d-x 3.1.1 学习笔记[17] 关于这些活动功能
供cocos2d-x通常使用的方法,我有一个好脸色.这项研究真的奖励. 向导首先,定义,实施一系列连续动作. 对于我们的行动能回调函数,我们必须申报并加以实施. void callBack(); vo ...
- [ACM] POJ 3686 The Windy's (二分图最小权匹配,KM算法,特殊建图)
The Windy's Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 4158 Accepted: 1777 Descr ...
- 【cocos2d-js官方文档】二十五、Cocos2d-JS v3.0中的单例对象
为何将单例模式移除 在Cocos2d-JS v3.0之前.全部API差点儿都是从Cocos2d-x中移植过来的,这是Cocos2d生态圈统一性的重要一环.可惜的是,这样的统一性也在非常大程度上限制了C ...