怎么在ThinkPHP3.1中綁定Action參數(shù)-創(chuàng)新互聯(lián)

怎么在ThinkPHP3.1中綁定Action參數(shù)?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括南湖網(wǎng)站建設(shè)、南湖網(wǎng)站制作、南湖網(wǎng)頁制作以及南湖網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,南湖網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到南湖省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

php有什么用

php是一個(gè)嵌套的縮寫名稱,是英文超級文本預(yù)處理語言,它的語法混合了C、Java、Perl以及php自創(chuàng)新的語法,主要用來做網(wǎng)站開發(fā),許多小型網(wǎng)站都用php開發(fā),因?yàn)閜hp是開源的,從而使得php經(jīng)久不衰。

Action參數(shù)綁定的原理是把URL中的參數(shù)(不包括分組、模塊和操作地址)和控制器的操作方法中的參數(shù)進(jìn)行綁定。例如,我們給Blog模塊定義了兩個(gè)操作方法read和archive方法,由于read操作需要指定一個(gè)id參數(shù),archive方法需要指定年份(year)和月份(month)兩個(gè)參數(shù)。


class BlogAction extends Action{
  public function read($id){
    echo 'id='.$id;
    $Blog = M('Blog');
    $Blog->find($id);
  }
  public function archive($year='2012',$month='01'){
    echo 'year='.$year.'&month='.$month;
    $Blog = M('Blog');
    $year  =  $year;
    $month =  $month;
    $begin_time = strtotime($year . $month . "01");
    $end_time = strtotime("+1 month", $begin_time);
    $map['create_time'] = array(array('gt',$begin_time),array('lt',$end_time));
    $map['status'] =  1;
    $list = $Blog->where($map)->select();
  }
 }

URL的訪問地址分別是:

http://serverName/index.php/Blog/read/id/5
http://serverName/index.php/Blog/archive/year/2012/month/03

兩個(gè)URL地址中的id參數(shù)和year和month參數(shù)會自動和read操作方法以及archive操作方法的同名參數(shù)綁定。
輸出的結(jié)果依次是:

id=5
year=2012&month=03

Action參數(shù)綁定的參數(shù)必須和URL中傳入的參數(shù)名稱一致,但是參數(shù)順序不需要一致。也就是說

http://serverName/index.php/Blog/archive/month/03/year/2012

和上面的訪問結(jié)果是一致的,URL中的參數(shù)順序和操作方法中的參數(shù)順序都可以隨意調(diào)整,關(guān)鍵是確保參數(shù)名稱一致即可。
如果用戶訪問的URL地址是(至于為什么會這么訪問暫且不提):

http://serverName/index.php/Blog/read/

那么會拋出下面的異常提示:

參數(shù)錯(cuò)誤:id

報(bào)錯(cuò)的原因很簡單,因?yàn)樵趫?zhí)行read操作方法的時(shí)候,id參數(shù)是必須傳入?yún)?shù)的,但是方法無法從URL地址中獲取正確的id參數(shù)信息。由于我們不能相信用戶的任何輸入,因此建議你給read方法的id參數(shù)添加默認(rèn)值,例如:

 public function read($id=0){
    echo 'id='.$id;
    $Blog = M('Blog');
    $Blog->find($id);
  }

這樣,當(dāng)我們訪問

http://serverName/index.php/Blog/read/

的時(shí)候 就會輸出

id=0

當(dāng)我們訪問

http://serverName/index.php/Blog/archive/

的時(shí)候,輸出:

year=2012&month=01

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,的支持。

分享標(biāo)題:怎么在ThinkPHP3.1中綁定Action參數(shù)-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://muchs.cn/article30/ceegso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)網(wǎng)站維護(hù)、網(wǎng)站導(dǎo)航、動態(tài)網(wǎng)站、做網(wǎng)站小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)