请求类
请求类是 HTTP 请求的面向对象表示。这适用于传入请求,例如来自浏览器的应用程序请求,以及传出请求,例如从应用程序发送到第三方应用程序的请求。
此类提供了它们都需要的一般功能,但两种情况都有从请求类扩展以添加特定功能的自定义类。在实践中,您需要使用这些类。
有关更多使用详细信息,请参阅 IncomingRequest 类 和 CURLRequest 类 的文档。
类参考
- class CodeIgniter\HTTP\Request
- getIPAddress()
- 返回值:
用户的 IP 地址,如果可以检测到。如果 IP 地址无效,则返回
0.0.0.0。- 返回类型:
string
返回当前用户的 IP 地址。如果 IP 地址无效,该方法将返回
0.0.0.0<?php echo $request->getIPAddress();
重要
此方法考虑了
Config\App::$proxyIPs设置,并将返回 HTTP 标头中允许的 IP 地址报告的客户端 IP 地址。
- isValidIP($ip[, $which = ''])
自版本 4.0.5 起已弃用: 请使用 验证 代替。
重要
此方法已弃用。它将在未来的版本中删除。
- 参数:
$ip (
string) – IP 地址$which (
string) – IP 协议 (ipv4或ipv6)
- 返回值:
如果地址有效,则为 true,否则为 false
- 返回类型:
bool
以 IP 地址作为输入,并根据其是否有效返回 true 或 false(布尔值)。
注意
上面的 $request->getIPAddress() 方法会自动验证 IP 地址。
<?php if (! $request->isValidIP($ip)) { echo 'Not Valid'; } else { echo 'Valid'; }
接受一个可选的第二个字符串参数
ipv4或ipv6来指定 IP 格式。默认情况下会检查两种格式。
- getMethod([$upper = false])
重要
使用
$upper参数已弃用。它将在未来的版本中删除。- 参数:
$upper (
bool) – 是否以大写或小写形式返回请求方法名称
- 返回值:
HTTP 请求方法
- 返回类型:
string
返回
$_SERVER['REQUEST_METHOD'],可以选择以大写或小写形式设置。<?php echo $request->getMethod(true); // Outputs: POST echo $request->getMethod(false); // Outputs: post echo $request->getMethod(); // Outputs: post
- setMethod($method)
自版本 4.0.5 起已弃用: 请使用
CodeIgniter\HTTP\Request::withMethod()代替。- 参数:
$method (
string) – 设置请求方法。用于模拟请求。
- 返回值:
此请求
- 返回类型:
- getServer([$index = null[, $filter = null[, $flags = null]]])
- 参数:
- 返回值:
如果找到
$_SERVER项目值,则为该值,否则为 null- 返回类型:
混合
此方法与 IncomingRequest 类 中的
getPost()、getGet()和getCookie()方法相同,只是它获取服务器数据 ($_SERVER)<?php $request->getServer('some_data');
要返回多个
$_SERVER值的数组,请将所有必需的键作为数组传递。<?php $request->getServer(['SERVER_PROTOCOL', 'REQUEST_URI']);
- getEnv([$index = null[, $filter = null[, $flags = null]]])
自版本 4.4.4 起已弃用: 此方法从一开始就无法正常工作。请改用
env()。- 参数:
- 返回值:
如果找到
$_ENV项目值,则返回该值,否则返回 null- 返回类型:
混合
此方法与 IncomingRequest 类 中的
getPost()、getGet()和getCookie()方法相同,只是它获取的是环境数据 ($_ENV)<?php $request->getEnv('some_data');
要返回多个
$_ENV值的数组,请将所有必需的键作为数组传递。<?php $request->getEnv(['CI_ENVIRONMENT', 'S3_BUCKET']);
- setGlobal($method, $value)
- 参数:
$method (
string) – 方法名称$value (
mixed) – 要添加的数据
- 返回值:
此请求
- 返回类型:
允许手动设置 PHP 全局变量的值,例如
$_GET、$_POST等。