KaliPHP 即是框架,也是类库,所以在执行框架注册kali::registry()
后,req.php
就可以被调用了,以下是几个常用操作
请求参数
以请求https://www.kaliphp.com/?ct=test&ac=demo&id=10
为例
// 获取id参数,GET、POST、PUT、DELETE、PATCH 都可以用这个获取
req::item('id');
// 如果id参数不存在则设置为0
req::item('id', 0);
// 强制id参数转化为整型
req::item('id', 0, 'int');
GET请求参数
req::get('id', 0, 'int');
// 所有 GET 参数
print_r(req::$gets);
POST请求参数
req::post('id', 0, 'int');
// 所有 POST 参数
print_r(req::$posts);
PUT请求参数
req::put('id', 0, 'int');
// 所有 PUT 参数
print_r(req::$puts);
DELETE请求参数
req::delete('id', 0, 'int');
// 所有 DELETE 参数
print_r(req::$deletes);
PATCH请求参数
req::patch('id', 0, 'int');
// 所有 PATCH 参数
print_r(req::$patchs);
COOKIE请求参数
req::cookie('id', 0, 'int');
// 所有 COOKIE 参数
print_r(req::$cookies);
SESSION请求参数
req::session('id', 0, 'int');
// 所有 SESSION 参数
print_r(req::$sessions);
SERVER请求参数
// 获得token,通常token不应放在 Query String,而是在 header
req::server('HTTP_TOKEN');
req::server('HTTP_ACCEPT', 'application/json');
获取HTTP Method名
// 返回 GET、POST、PUT、DELETE、CLI
req::method();
返回JSON编码内容
// 客户端设置 HTTP_ACCEPT,要求服务端返回JSON编码内容
req::is_json();
获得请求路径
// 返回 /test/demo
req::path();
获得请求参数
// 返回 ct=test&ac=demo&id=10
req::query_string();
获得网址,不含 QueryString
// 返回 https://www.kaliphp.com
req::url();
获得完整网址,包含 QueryString
// 返回 https://www.kaliphp.com/?ct=test&ac=demo&id=10
req::full_url();
获取来源网址 (上一个页面地址)
获取浏览器UA
获取浏览器语言
获取用户IP
获取用户国家代码
// 返回 HK
req::country();
设置跳转页
req::set_redirect('?ct=category&ac=list&cate_id=10')
获取最后一次设置的跳转页
通常用于列表页通过搜索,然后进入详情页,再编辑,这个时候上一页已经不是搜索后的列表页了,要想编辑后直接返回,就只能通过设置跳转页来实现
// 不存在设置的跳转页则直接返回上一页
req::redirect(req::referer());