tp5 請求資訊

2021-09-26 10:58:42 字數 3388 閱讀 9916

如果要獲取當前的請求資訊,可以使用\think\request類,

除了下文中的

$request = request::instance();

也可以使用助手函式

$request = request();

當然,最方便的還是使用注入請求物件的方式來獲取變數。

例如:$request = request::instance();

// 獲取當前網域名稱

echo 'domain: 』 . $request->domain() . 『

』;// 獲取當前入口檔案

echo 'file: 』 . $request->basefile() . 『

』;// 獲取當前url位址 不含網域名稱

echo 'url: 』 . $request->url() . 『

』;// 獲取包含網域名稱的完整url位址

echo 'url with domain: 』 . $request->url(true) . 『

』;// 獲取當前url位址 不含query_string

echo 'url without query: 』 . $request->baseurl() . 『

』;// 獲取url訪問的root位址

echo 『root:』 . $request->root() . 『

』;// 獲取url訪問的root位址

echo 'root with domain: 』 . $request->root(true) . 『

』;// 獲取url位址中的path_info資訊

echo 'pathinfo: 』 . $request->pathinfo() . 『

』;// 獲取url位址中的path_info資訊 不含字尾

echo 'pathinfo: 』 . $request->path() . 『

』;// 獲取url位址中的字尾資訊

echo 'ext: 』 . $request->ext() . 『

』;輸出結果為:

domain:

file: /index.php

url: /index/index/hello.html?name=thinkphp

url with domain: /index/index/hello.html?name=thinkphp

url without query: /index/index/hello.html

root:

root with domain:

pathinfo: index/index/hello.html

pathinfo: index/index/hello

ext: html

$request = request::instance();

echo 「當前模組名稱是」 . $request->module();

echo 「當前控制器名稱是」 . $request->controller();

echo 「當前操作名稱是」 . $request->action();

如果當前訪問的位址是 http://servername/index.php/index/hello_world/index

輸出結果為:

當前模組名稱是index

當前控制器名稱是helloworld

當前操作名稱是index

設定模組名稱值需要向module方法中傳入名稱即可,同樣使用於設定控制器名稱和操作名稱

request::instance()->module(『module_name』);

e qu

est−

>ip

().′

/>′;

echo

′是否a

jax請

求:′.

vare

xpor

t(

request->ip() . '

'; echo '是否ajax請求:' . var_export(

reques

t−>ip

().′

/>′;

echo

′是否a

jax請

求:′.

vare

​xpo

rt(request->isajax(), true) . 『

』;echo 『請求引數:』;

dump(req

uest

−>pa

ram(

));e

cho′

請求引數

:僅包含

name

′;du

mp

(request->param()); echo '請求引數:僅包含name'; dump(

reques

t−>pa

ram(

));e

cho′

請求引數

:僅包含

name

′;du

mp(請求引數:僅包含name

array (size=1)

『name』 => string 『thinkphp』 (length=8)

請求引數:排除name

array (size=1)

『test』 => string 『ddd』 (length=3)

hello方法修改如下:

r eq

uest

=req

uest

::in

stan

ce()

;ech

o′路由

資訊:′

;dum

p(

request = request::instance(); echo '路由資訊:'; dump(

reques

t=re

ques

t::i

nsta

nce(

);ec

ho′路

由資訊:

′;du

mp(排程資訊:

array (size=2)

『type』 => string 『module』 (length=6)

『module』 =>

array (size=3)

0 => null

1 => string 『index』 (length=5)

2 => string 『hello』 (length=5)

如果某些環境下面獲取的請求資訊有誤,可以手動設定這些資訊引數,使用下面的方式:

$request = request::instance();

$request->root(『index.php』);

$request->pathinfo(『index/index/hello』);

tp5 判斷請求方式

是否為 get 請求 if request instance isget echo 當前為 get 請求 是否為 post 請求 if request instance ispost echo 當前為 post 請求 是否為 put 請求 if request instance isput echo...

TP5常量參考

ext 類庫檔案字尾 php think version 框架版本號ds 當前系統的目錄分隔符 think path 框架系統目錄 root path 框架應用根目錄 lib path 系統類庫目錄 預設為 think path.library core path 系統核心類庫目錄 預設為 lib ...

TP5 基礎說明

比如 做乙個後台網頁 裡邊建立controller model view資料夾 controller model存放行為和類的 裡邊檔案,第乙個字母必需是大寫 view存放模板網頁檔案 注意 建立乙個網頁,三個資料夾都要對應建立乙個對應的網頁檔案 例子1 建立後台首頁 index.php 1.con...