CI中的超级对象
Posted private袜子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CI中的超级对象相关的知识,希望对你有一定的参考价值。
CI中的超级对象就是当前控制器对象,它提供了很多属性,可以通过var_dump($this)打印所有的超级对象;
load可以理解为一个加载器,加载了很多功能,可以理解为当你使用 $this -> load 之后CI自动帮你new了一个loader类的对象实例,然后你就可以调用load里面封装的各种方法(函数),具体的函数可以在CI文件目录下的system/core/Loader.php文件中查看;
$this -> load ->
view() //装载视图;
vars() //分配变量到视图;
database() //装载数据库操作对象;
model() //装载模型;
uri也是CI提供的一个类文件,里面封装了一些关于URL相关一些解析的函数,具体的函数可以在CI文件目录下的system/core/URI.php文件中查看
$this -> uri ->
segment() //用于获取url上某一段的参数;CI中的传递参数并非传统的pathinfo模式,该函数获取URL中的某一段上的数据;如下图所示,当你需要获取182时则$this->uri->segment(3);就可以获取到182这个值,以此类推只需要更改segment里面的参数就可以获取到相应段的值;
通常情况下一般为:入口文件.php/控制器/方法/a参数/b参数/c参数
input输入类,里面封装了一些输入类函数,具体的函数可以在CI文件目录下的system/core/Input.php文件中查看
$this -> input ->
post() 等价于原生PHP中的 $_POST[ \' \' ] ;
server 等价于原生PHP中的 $_SERVER[ \' \' ] ;
在CI中直接使用$_POST也是可以直接接收到客户端提交的参数,但ci提供的input类会有一些简单的安全处理机制;
在view视图里可以直接使用$this访问超级对象;
以上是关于CI中的超级对象的主要内容,如果未能解决你的问题,请参考以下文章
CI-CodeIgniter中“超级对象”:$CI =& get_instance()
何时在面向对象的 php 中的超级全局变量中使用“@”? [复制]