1. url片段(CI域名组成说明)
 
     example.com/index.php/test/index
 
第一部分(test):控制器
第二部分(index):方法,动作
如果第二部分为空,默认为index
 

 
2. 控制器文件格式:
 
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Admin extends CI_Controller
{
    //后台管理系统首页
    public function index()
    {
        $this->load->view('index');
    }
    //后台登陆
    public function login()
    {
        $this->load->view('login.html');
    }
}
?>

 
3. 修改默认控制器:
 
控制器文件名称必须和类名称一致
 
进入到application->config->routes.php里修改,例如想把前台主页的控制器设置为:home.php:(后缀名为php的可以省略,其余格式的就必须写上了)
 
$route['default_controller'] = 'home';

4. 载入单个和多个文件:

 
$this->load->view('文件名')

php文件可以省略后缀名,其它格式的文件必须加上后缀名

 
载入多个文件,直接在下一行添加一条同样语法格式的语句即可
 

 
5. 分配数据
 
需要在控制器中设置数组,然后在载入文件的时候添加参数
 
$this->load->view('文件名','数组名')
 
注意:多个载入文件,只要其中一个文件添加了数据参数,则其它的默认同样添加了数据参数。
 
在视图中使用数据的时候,使用$+数组元素名
 
//实例控制器:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Home extends CI_Controller {
public function index()
    {
        $data['title'] = '我是标题';
        $data['name'] = array(
            '王五',
            '马六',
            '洪七'
        );
    $this->load->view('index/v_home',$data);
}

//实例视图:
<html>
<body>
    home视图,这个是home.php文件--------
    <?php echo $title;?>
    <?php foreach($name as $key=>$val):?>
        <span><?php echo $val?> </span>
    <?php endforeach ?>
    <hr />
 </body>
</html>
 
输出结果为:
 

 
6. 辅助函数:
 
1. system/helpers或application/文件夹
 
2.application/helpers优先级高于system/helpers
 
载入:(name为辅助函数名)
 
//在控制器中手动载入:
$this->load->helper('name')
//自动载入:
application/config/autoload.php中找到
$autoload['helper'] = array('name')
 
最常用的辅助函数:url 函数
 $this->load->helper('url') //载入辅助函数,也可以设置自动载入
        redirect('home/hzf');    //    进行跳转
        echo site_url();    //输出当前路径
        echo "<br />";
        echo base_url();    //输出跟目录

7. 自定义函数:

system->core->common 中添加自定义函数,zing定义函数全局有效
 
/* End of file Common.php */
/* Location: ./system/core/Common.php */
function printadmin()
{
    echo "全局函数";
}

CodeIgniter学习一:基础知识的更多相关文章

  1. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  2. Ant学习-001-ant 基础知识及windows环境配置

    一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...

  3. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  4. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  5. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

  6. 学习Python3基础知识过程中总结

    print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...

  7. three.js学习笔记--基础知识

    基础知识 从去年开始就在计划中的three.js终于开始了 历史介绍 (摘自ijunfan1994的转载,感谢作者) OpenGL大概许多人都有所耳闻,它是最常用的跨平台图形库. WebGL是基于Op ...

  8. SQLServer学习笔记<>.基础知识,一些基本命令,单表查询(null top用法,with ties附加属性,over开窗函数),排名函数

    Sqlserver基础知识 (1)创建数据库 创建数据库有两种方式,手动创建和编写sql脚本创建,在这里我采用脚本的方式创建一个名称为TSQLFundamentals2008的数据库.脚本如下:   ...

  9. Android学习之基础知识十五 — 最佳UI体验(Material Design实战)

    一.前言 长久以来,大多数人都认为Android系统的UI并不美观,至少没有iOS系统的美观.以至于很多IT公司在进行应用界面设计的时候,为了保证双平台的统一性,强制要求Android端的界面风格必须 ...

  10. Android学习之基础知识十四 — Android特色开发之基于位置的服务

    一.基于位置的服务简介 LBS:基于位置的服务.随着移动互联网的兴起,这个技术在最近的几年里十分火爆.其实它本身并不是什么时髦的技术,主要的工作原理就是利用无线电通讯网络或GPS等定位方式来确定出移动 ...

随机推荐

  1. Python标准库09 当前进程信息 (部分os包)

    原文:Python标准库09 当前进程信息 (部分os包) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们在Linux的概念 ...

  2. hdu 4035 Maze(期待更多经典的树DP)

    Maze Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others) Total Submi ...

  3. Oracle 实现 mysql 的 find_in_set 排序!

    oracle 实现类似MYSQL的 find_in_set 排序,函数 decode: select * from tb_info_game where gameid in(23,20,19,26,1 ...

  4. React组件开发入门

    React 组件开发入门 Introduction 本文组成: Ryan Clark文章Getting started with React的翻译. 博主的实践心得. React由Facebook的程 ...

  5. android app启动过程(转)

    Native进程的运行过程 一般程序的启动步骤,可以用下图描述.程序由内核加载分析,使用linker链接需要的共享库,然后从c运行库的入口开始执行. 通常,native进程是由shell或者init启 ...

  6. Thinkpad E431 解决无线网卡无法开启

    Thinkpad E431无线网卡无法开启 现象再现: Thinkpad E431新机,原装win8系统,使用win7光盘换为win7系统,官方下载驱动程序,安装后无线上网正常. 点击功能软件Acce ...

  7. Python于*args 和**kwargs使用

    1,*args  当量list名单 def fun_args(farg, *args): print "arg:", farg for value in args: print & ...

  8. log4j+logback+slf4j+commons-logging的关系与调试(转)

    背景     由于现在开源框架日益丰富,好多开源框架使用的日志组件不尽相同.存在着在一个项目中,不同的版本,不同的框架共存.导致日志输出异常混乱.虽然也不至于对系统造成致命伤害,但是明显可以看出,架构 ...

  9. java多线程检测可用IP

    最近有一个问题进行系统性能优化的时候来到.解析分享给大家后,. 我们socket当建立连接,假设我们不能将计算机连接到指定的站点,那么这将导致系统卡socket的connect在此方法. 我们都知道s ...

  10. 【剑指offer】堆栈推弹出序列

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/26077863 剑指offer上的第22题,九度OJ上AC. 题目描写叙述: 输入两个整数序 ...