ci控制器

1、什么是控制器?简而言之,控制器就是一个类文件,是一种可以和URI关联在一块儿的方式来命名的。php

 URI: example.com/index.php/nlog/html

上个例子中 CodeIgniter将会尝试查询一个名为Blog.php的控制器并加载它。app

当控制器的名称和URI的第一段匹配上时,它将会被加载。、编辑器

让咱们来试试看:Hello World!ide

接下来你会看到如何建立一个简单的控制器,打开你的文本编辑器,新建一个文件Blog.php,而后放入如下代码:codeigniter

<?php
class Blog extends CI_controller {
	public function index() {
		echo "hello world!";
	}
}

而后将文件保存在application/controllers/目录下面。ui

注意: 文件名必须是大写字母开头,如:'Blog.php'。this

如今使用相似下面的URL来访问你的站点:spa

example.com/index.php/blog/code

若是一切正常,你将看到:Hello World!

 

注意: 类名必须以大写字母开头。

这是有效的:

<?php
class Blog extends CI_Controller {

}

这是无效的:

<?php
class blog extends CI_Controller {

}

另一定要确保您的控制器继承了父控制器类,这样它才能使用父类的方法。

方法:

上例中,方法名为index()。"index"方法老是在URI的第二段为空时被调用。另外一种显示"Hello World!"的方法是:example.com/index.php/blog/index/

URI中的第二段用于决定调用控制器中的哪一个方法:

让咱们试一下,向你的控制器添加一个新的方法:

<?php
class Blog extends CI_controller {
	public function index() {
		echo "hello world!";
	}

	public function comments() {
		echo " Look at this!";
	}
}

如今,经过下面的 URL 来调用 comments 方法:

example.com/index.php/blog/comments/

2、经过URI分段向你的方法传递参数

若是你的URI多于两个段,多余的段将做为参数传递到你的方法中。

假如你的URI是这样:example.com/index.php/products/shoes/sandals/123

你的方法将会接收到第三段第四段的两个参数("sandals"和"123"):

<?php
class Products extends CI_controller {
	public function shoes($sandals,$id) {
		echo $sandals;
		echo $id;
	}
}

注意:   若是你使用了 URI 路由 ,传递到你的方法的参数将是路由后的参数。

相关文章
相关标签/搜索