CodeIgniter 学习笔记
来源:互联网 发布:dbc物品数据库 编辑:程序博客网 时间:2024/05/02 14:30
想充分全面了解CodeIgniter的请自行阅读官方文档。本文章是使用CI时候的一些小技巧总结。
先简单介绍下CI,是一个极其轻量级的php framework。这个可以个YII比较下。php的framework 有一个最大的特点,MVC的层次很清晰,使用后会让你对Model, view, controller有更好的认识。
URL格式的更改: 去掉index.php, 在CI更目录下创建.htaccess文件,写入以下代码。记住要在apache里打开rewrite模块。
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|javascript|robots\.txt|user_guide)
RewriteRule ^(.*)$ /ci/index.php/$1 [L]
如果服务器是IIS的话,相对应的规则会有变化,加载方式也有所不同,下面只写出规则:
[ISAPI_Rewrite]
RewriteRule ^/(index.php|css|images|javascript|robots\.txt|upload)(.*)$ $0 [I,L]//$0 在这里表示原来的字符串。
RewriteRule ^/(.*)$ /index.php\?/$1 [I,L] // $1 表示(.*)里面的内容,在IIS中最好把起始符^和结束符$写上去,在IIS6中可能会出现问题,IIS7上则没什么问题。
载入CSS,JS文件路径: 在CI下面使用相对路径不是很靠谱,所以需要用base_url函数来帮助组成绝对路径。由于base_url函数会涉及整个网站,所以建议在application的config文件夹下的autoload.php文件里面把url加到autoload['helper']里面。
<link href="<?=base_url('/css/header.css')?>" rel="stylesheet" type="text/css"/>
<link href="<?=base_url()?>/css/header.css" rel="stylesheet" type="text/css"/>
Controller载入Controller: 由于MVC设计的关系,controller每个都是独立的,所以在CI中是不能直接load的。当然你可以使用include方法根据路径强行load,但这违背了MVC的设计原理。这里有种方式,建立一个helper文件,把所有的函数扔到helper里面去,然后在里面可以用$CI =&get_instance();得到实例,进行加载,然后就可以使用controller了。最后只要在另一个controller里面load helper,然后使用里面的函数就达到了load controller的功能。
setcookie,虽然跟CI关系不大,但是还是有必要提一下的,它定义的cookie只正对当前目录。从php manual查到函数定义,如果要是作用域变为整个site,可以把第四个参数$path设为'/',如果想对cookie的作用域进行限制,则只要改变$path和$domain就行了,顺带提下最后个参数$httponly
是定义是否能在js端获取cookie。
bool setcookie ( string $name
[, string $value
[, int $expire
= 0 [, string $path
[, string $domain
[,bool $secure
= false [, bool $httponly
= false ]]]]]] )
(至于session的话,只要加上session_start,然后对$_SESSION进行操作,可以无视作用域的问题)
未完待续。。。
- CodeIgniter 学习笔记
- CodeIgniter学习笔记总汇
- CodeIgniter学习笔记
- codeigniter 的学习笔记
- php CodeIgniter 学习笔记
- CodeIgniter学习笔记
- PHP框架CodeIgniter学习笔记(一)
- CodeIgniter学习笔记 Item2--CI中的MVC
- CodeIgniter学习笔记 Item5--CI中的AR
- CodeIgniter学习笔记 Item7--用户基础教程 摘要
- CodeIgniter学习笔记 Item8--CI辅助函数
- CodeIgniter学习笔记 Item10--CI总结精华
- CodeIgniter笔记
- CodeIgniter笔记
- codeIgniter 学习
- CodeIgniter 学习
- CodeIgniter学习笔记 Item1--CI简介与MVC设计模式
- CodeIgniter学习笔记 Item3--CI中的超级对象
- vs2008给子对话框添加初始化函数OnInitDialog()函数
- 对话框样式的activity
- JXL应用-解析excel工具包
- pb中动态sql的使用
- MQ put encoding
- CodeIgniter 学习笔记
- Copy and Paste to OneNote
- 多列索引
- hibernate中lazy的使用
- Unable to load configuration"异常处理
- 无意义的小东西
- hoj Printer Queue
- Objective-C中的委托
- 日本留学需要的申请资料