请求类
请求类是 HTTP 请求的面向对象表示。这旨在适用于传入请求,例如来自浏览器对应用程序的请求,以及传出请求,例如应用程序对第三方应用程序的请求所用的请求。
这个类提供了它们都需要的常见功能,但这两种情况都有自定义类来扩展请求类以添加特定功能。在实践中,你需要使用这些类。
有关更多使用详细信息,请参阅 IncomingRequest 类 和 CURLRequest 类 的文档。
类参考
- class CodeIgniter\HTTP\Request
- getIPAddress()
- 返回
- 如果可以检测到,则为用户的 IP 地址。如果 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
- 返回类型
- mixed
 - 此方法与 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]]])
- 参数
- 返回
- 如果找到,则返回 - $_ENV项目的值,如果没有找到,则为 null
- 返回类型
- mixed
 - 此方法与 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等。