亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在ThinkPHP3.1中綁定Action參數

發布時間:2021-03-04 15:11:29 來源:億速云 閱讀:164 作者:Leah 欄目:開發技術

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

php有什么用

php是一個嵌套的縮寫名稱,是英文超級文本預處理語言,它的語法混合了C、Java、Perl以及php自創新的語法,主要用來做網站開發,許多小型網站都用php開發,因為php是開源的,從而使得php經久不衰。

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

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

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

id=5
year=2012&month=03

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

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

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

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

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

參數錯誤:id

報錯的原因很簡單,因為在執行read操作方法的時候,id參數是必須傳入參數的,但是方法無法從URL地址中獲取正確的id參數信息。由于我們不能相信用戶的任何輸入,因此建議你給read方法的id參數添加默認值,例如:

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

這樣,當我們訪問

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

的時候 就會輸出

id=0

當我們訪問

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

的時候,輸出:

year=2012&month=01

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

望城县| 陆丰市| 玉环县| 双城市| 积石山| 榆树市| 依安县| 富平县| 腾冲县| 嵊泗县| 阳曲县| 芷江| 泸溪县| 五大连池市| 乐都县| 大邑县| 崇仁县| 万山特区| 彰化县| 珲春市| 铅山县| 偃师市| 台州市| 句容市| 历史| 镇远县| 洪雅县| 寿光市| 谷城县| 鄂托克旗| 永登县| 罗定市| 铁力市| 吐鲁番市| 南部县| 盖州市| 班玛县| 双牌县| 黄大仙区| 黑水县| 乌兰县|