[TOC]
# http資源
通過該類可以獲取web相關信息
## 引用http資源類
### **創建實例**
```
<?php
namespace app\home;
use denha\HttpResource;
class Resource
{
public function detail(){
print_r(HttpResource::$request);
}
}
```
請求http://127.0.0.1/home/resource/detail 將打印全部http信息
### **獲取GET參數**
```
HttpResource::$request['params']['get']
```
### **實時獲取GET參數指定名稱值**
```
HttpResource::get($name)
```
### **使用助手函數快速獲取GET參數**
```
get($name)
```
*****
### **獲取POST參數**
```
HttpResource::$request['params']['post']
```
### **實時獲取POST參數指定名稱值**
```
HttpResource::post($name)
```
### 使用助手函數快速獲取POST參數
```
post($name)
```
## **過濾信息**
### 過濾參數內容 HttpResource::filter($data, $types, $default);
```
## 指定變量類為整數型 如果不存在或者null則默認值為100
HttpResource::filter($name,'intval',100);
```
>[info]默認過濾注入信息
需要特殊指定類型的使用
| types值 | 過濾類型 |
| --- | --- |
| intval | 整型 |
| float | 浮點型|
| text| 文本類型|
| trim| 清空兩邊空白|
| bool | 布爾類型|
| json| 解析json|
| implode | 分割數組|
| img| 圖片類型|
| time| 文本時間類型轉時間戳|
### **組合過濾**
```
## 先轉換txt然后清空兩邊空白
HttpResource::filter($name,'text.trim','');
```
>[info]組合過濾使用 $types參數使用"."分割
### **GET/POST 直接過濾**
```
HttpResource::get($name,'text','default');
HttpResource::post($name,'img','');
get($name,'time','');
post($jsonData,'json');
```
## **獲取請求類型**
```
HttpResource::getMethod();
返回值 CLI GET POST PUT ...
```
## **獲取當前Module名稱**
```
HttpResource::getModuleName();
```
## **獲取當前Controller控制器名稱**
```
HttpResource::getControllerName();
```
## **獲取當前Action名稱**
```
HttpResource::getActionName();
```
## **獲取當前請求協議類型**
```
HttpResource::getHttpType();
```
## **獲取當前當前域**
```
HttpResource::getHost();
```
## **獲取當前完成Url地址**
```
HttpResource::getUrl();
```
## **獲取請求ip信息**
```
HttpResource::ip(bool $isLong);
HttpResource::ip(true) 返回整型ip地址
默認false 返回真實ip信息
```