目錄
Yii控制器动作参数绑定处理
您可能感兴趣的文章
首頁 php教程 php手册 Yii控制器动作参数绑定处理

Yii控制器动作参数绑定处理

Jun 13, 2016 am 09:07 AM
yii 控制器 綁定

Yii控制器动作参数绑定处理

从版本 1.1.4 开始,Yii 提供了对自动动作参数绑定的支持。就是说,控制器动作可以定义命名的参数,参数的值将由 Yii 自动从 $_GET 填充。

为了详细说明此功能,假设我们需要为 PostController 写一个 create 动作。此动作需要通过$_GET传递两个参数:

category:一个整数,代表帖子(post)要发表在的那个分类的ID。

language:一个字符串,代表帖子所使用的语言代码。

从 $_GET 中提取参数时,我们可以不再像下面这样写相关的验证代码了:

class PostController extends CController{
	public function actionCreate(){
		if(isset($_GET['category']))
			$category=(int)$_GET['category'];
		else
			throw new CHttpException(404,'invalid request');
		if(isset($_GET['language']))
			$language=$_GET['language'];
		else
			$language='en';
		// ......
	}
}
登入後複製

现在使用动作参数功能,我们可以更轻松的完成如上面代码的相关任务:

class PostController extends CController{
	public function actionCreate($category, $language='en'){
		$category = (int)$category;
		echo 'Category:'.$category.'/Language:'.$language;
		// ......
	}
}
登入後複製

注意我们在动作方法 actionCreate 中添加了两个参数。这些参数的名字必须和我们想要从 $_GET 中提取的名字一致。当用户没有在请求中指定 $language 参数时,这个参数会使用默认值 en 。由于 $category 没有默认值,如果用户没有在 $_GET 中提供 category 参数,将会自动抛出一个 CHttpException (错误代码 400) 异常。

从版本1.1.5开始,Yii已经支持数组的动作参数。使用方法如下:

class PostController extends CController{
	public function actionCreate(array $categories){
		// Yii will make sure $categories be an array
	}
}
登入後複製

您可能感兴趣的文章

  • CuteFTP连接ftp服务器时弹出“遇到无效的参数”错误的解决办法
  • linux chmod(文件或文件夹权限设定)命令参数及用法详解
  • thinkphp 的 Action 控制器中的系统常量总结
  • JavaScript浏览器地址栏特效之无敌风火轮特效
  • 基于jQuery控制的左右滚动,自动滚动效果
  • 由于其配置信息(注册表中的)不完整或已损坏,Windows 无法启动这个硬件设备。 (代码 19)解决办法
  • javascript获取当前完整的url地址以及参数的方法
  • PHP检查浏览器参数防止被SQL注入的函数
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Windows 11 上正確校準 Xbox One 控制器的方法 Windows 11 上正確校準 Xbox One 控制器的方法 Sep 21, 2023 pm 09:09 PM

Windows 11 上正確校準 Xbox One 控制器的方法

兩張微信可以綁定同一張銀行卡嗎 兩張微信可以綁定同一張銀行卡嗎 Aug 25, 2023 pm 03:13 PM

兩張微信可以綁定同一張銀行卡嗎

如何在Vue中實作可編輯的表格 如何在Vue中實作可編輯的表格 Nov 08, 2023 pm 12:51 PM

如何在Vue中實作可編輯的表格

小紅書怎麼綁定子帳號?它怎麼檢測帳號是否正常? 小紅書怎麼綁定子帳號?它怎麼檢測帳號是否正常? Mar 21, 2024 pm 10:11 PM

小紅書怎麼綁定子帳號?它怎麼檢測帳號是否正常?

從零開始學習Laravel:控制器方法呼叫詳解 從零開始學習Laravel:控制器方法呼叫詳解 Mar 10, 2024 pm 05:03 PM

從零開始學習Laravel:控制器方法呼叫詳解

BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包? Apr 26, 2024 am 09:40 AM

BTCC教學:如何在BTCC交易所綁定使用MetaMask錢包?

今日頭條綁定抖音的步驟方法 今日頭條綁定抖音的步驟方法 Mar 22, 2024 pm 05:56 PM

今日頭條綁定抖音的步驟方法

菜鳥app怎麼綁定拼多多 菜鳥裹裹怎麼添加拼多多平台 菜鳥app怎麼綁定拼多多 菜鳥裹裹怎麼添加拼多多平台 Mar 19, 2024 pm 02:30 PM

菜鳥app怎麼綁定拼多多 菜鳥裹裹怎麼添加拼多多平台

See all articles