request物件的作用是與客戶端互動,收集客戶端的form、cookies、超連結,或者收集伺服器端的環境變數。
request物件是從客戶端向伺服器發出請求,包括使用者提交的資訊以及客戶端的一些資訊。客戶端可通過html表單或在網頁位址後面提供引數的方法提交資料,然後通過request物件的相關方法來獲取這些資料。request的各種方法主要用來處理客戶端瀏覽器提交的請求中的各項引數和選項。
動態繫結屬性
可以給request請求物件繫結屬性,方便全域性呼叫,例如我們可以在公共控制器中繫結當前登入的使用者模型到請求物件
<?php
use think\controller;
use think\request;
use think\session;
class base extends controller
}
1、使用request
use think\request;
//過初化始的方法來訪問,這種情況可以用於自己寫的類並且有繼承 controller
$request = request::instance();
//輸出當前訪問url
echo $request->url().'
';結果為:/admin/index4/hello.html?name=1111&en_name=luxi
//用當前繼承了controller 可以直接使用$this->request來訪問 ,也可以輸出不含網域名稱的url位址
echo $this->request->url().'
';結果為:/admin/index4/hello.html?name=1111&en_name=luxi
//動態繫結屬性 ,這種方式可以在不同控制器之間傳遞引數
$this->request->bind('user_name','張三');
echo $this->request->user_name.'
';結果為:張三
public function _initialize()
public function hello()
結果為:user_25625252
2、request 函式助手
//通過函式助手訪問 輸入當前訪問url
echo request()->url().'
';結果為:/admin/index4/hello.html?name=1111&en_name=luxi
3、請求變數資訊
$request = request::instance();
//請求變數資訊
print_r($request->param()).'
';echo '
'.$request->param('name').'
';結果為:
array ( [name] => 1111 [en_name] => luxi )
1111
4、請求變數資訊助手函式
//請求變數助手函式
print_r(input()).'
';echo input('name').'
';
5、param方法支援變數的過濾和預設值
//param方法支援變數的過濾和預設值 如果沒有值的話,預設為luxi,如果傳了值就把大寫變為小定。
echo $request->param('en_name','luxi','strtolower');
結果為:luxi
6、$request 指定獲取那個引數
echo '/*************request***************************/'.'
';print_r($request->get());
echo '
';echo 'get引數:name:'.$request->get('name').'
';echo 'post引數:name:'.$request->post('name').'
';echo 'cookie引數:name:'.$request->cookie('name').'
';echo '上傳檔案資訊:image:'.$request->file('image').'
';結果為:
/*************get***************************/
array ( [name] => 1111 [en_name] => luxi )
get引數:name:1111
post引數:name:
cookie引數:name
上傳檔案資訊:image:
input 助手函式
echo '/*************input***************************/'.'
';print_r(input('get.'));
echo '
';echo 'get引數:name:'.input('get.name').'
';echo 'post引數:name:'.input('post.name').'
';echo 'cookie引數:name:'.input('cookie.name').'
';echo '上傳檔案資訊:image:'.input('file.image').'
';結果為:
/*************input***************************/
array ( [name] => 1111 [en_name] => luxi )
get引數:name:1111
post引數:name:
cookie引數:name:
上傳檔案資訊:image:
echo '/*************request 其他引數***************************/'.'
';echo '請求方法:'.$request->method().'
';echo '訪問ip:'.$request->ip().'
';echo '是否是ajax請求:'.($request->isajax()?'是':'否').'
';echo '當前網域名稱:'.$request->domain().'
';echo '當前入口文件:'.$request->basefile().'
';結果為:
/*************request 其他引數***************************/
請求方法:get
訪問ip:127.0.0.1
是否是ajax請求:否
當前網域名稱:
當前入口文件:/index.php
echo '/*************request 當前模組/控制器/操作資訊***************************/'.'
';echo '模組:'.$request->module().'
';echo '控制器:'.$request->controller().'
';echo '方法:'.$request->action().'
';結果為:
/*************request 當前模組/控制器/操作資訊***************************/
模組:admin
控制器:index4
方法:hello
Thinkphp 請求和響應
一.request物件獲取方法 1.request 助手函式獲取 2.think request 類獲取 usethink request class index 二.request 物件的使用方法 注request的param方法獲取的值包括post傳輸的值,使用時盡量使用 request pos...
三 ThinkPHP的請求和響應
變數獲取有三種方式 1 門面方式獲取資料 use think facade request 此方法要傳入引數 request public function fun request request 2 依賴注入方式 public function fun request request 3 輔助函式...
ThinkPHP5 表單請求和驗證 01
請求型別 表單驗證的第一步是判斷表單提交型別,在請求物件一講中我們已經掌握了判斷請求型別的方法,在restful設計的架構規範中,不同的請求型別的用途是不同的,應當盡量遵守,建議的規範是 請求型別 用途get 讀取資源 post 建立資源 put更新資源 patch 更新部分資源 delete 刪除...