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 路由 ,傳遞到你的方法的參數將是路由後的參數。

相關文章
相關標籤/搜索