webino / request
简单的PHP环境请求实现。
Requires
- php: ~7.1
- webino/event-emitter: dev-develop
- webino/exceptions: dev-develop
- webino/instance-container: dev-develop
Requires (Dev)
- phpstan/phpstan: 0.*
- squizlabs/php_codesniffer: 3.*
- tracy/tracy: 2.*
- webino/testing: 1.*
Suggests
- tracy/tracy: Better debug.
This package is auto-updated.
Last update: 2024-09-20 10:14:02 UTC
README
简单的PHP环境请求实现。 [进行中]
推荐用法
获取应用分发的请求数据。
设置
composer require webino\request
快速使用
获取当前执行上下文的请求对象
use Webino\InstanceContainer; use Webino\HttpRequest; use Webino\ConsoleRequest; use Webino\RequestInterface; $container = new InstanceContainer; /** @var RequestInterface $request */ $request = $container->get(RequestInterface::class); if ($request instanceof HttpRequest) { } elseif ($request instanceof ConsoleRequest) { }
制作HTTP请求
use Webino\InstanceContainer; use Webino\HttpRequest; $container = new InstanceContainer; /** @var HttpRequest $request */ $request = $container->make(HttpRequest::class, HttpRequest::defaults([ HttpRequest::QUERY_STRING => 'foo=bar&baz=bam', HttpRequest::SCRIPT_NAME => '/example/index.php', HttpRequest::SCRIPT_FILENAME => '/var/www/html/example/index.php', HttpRequest::URI => '/example/some-route' ]));
制作控制台请求
use Webino\InstanceContainer; use Webino\ConsoleRequest; $container = new InstanceContainer; /** @var ConsoleRequest $request */ $request = $container->make(ConsoleRequest::class, ConsoleRequest::defaults([ ConsoleRequest::COMMAND => 'foo --bar baz', ConsoleRequest::SCRIPT_FILENAME => '/var/www/html/test/index.php', ]));
API
RequestInterface
-
const TIME
请求时间浮点选项。 -
const TIME_DEFAULT
默认请求时间浮点值,示例。 -
const SCRIPT_FILENAME
执行脚本文件名字符串选项。 -
const SCRIPT_FILENAME_DEFAULT
默认执行脚本文件名,示例。 -
float getRequestTime()
返回HTTP请求时间。 -
string getScriptFileName()
返回执行脚本文件名。
HttpRequest
-
const SCRIPT_NAME
执行脚本名称字符串选项。 -
const SCRIPT_NAME_DEFAULT
执行脚本名称,示例值。 -
const GATEWAY_INTERFACE
网关接口字符串选项。 -
const GATEWAY_INTERFACE_DEFAULT
网关接口,示例值。 -
const SERVER_SOFTWARE
服务器软件字符串选项。 -
const SERVER_SOFTWARE_APACHE
Apache服务器软件,示例值。 -
const SERVER_SOFTWARE_NGINX
Nginx服务器软件,示例值。 -
const HOST
服务器主机名字符串选项。 -
const HOST_LOCAL
本地服务器主机名,示例值。 -
const HOST_IP
服务器IP地址字符串选项。 -
const HOST_IP_LOCAL
本地服务器IP地址,示例值。 -
const URI
请求URI字符串选项。 -
const URI_DEFAULT
请求URI,示例值。 -
const METHOD
请求方法字符串选项。 -
const METHOD_GET
GET请求方法,示例值。 -
const METHOD_POST
POST请求方法,示例值。 -
const SCHEME
请求方案字符串选项。 -
const SCHEME_HTTP
HTTP请求方案,示例值。 -
const SCHEME_HTTPS
HTTPS请求方案,示例值。 -
const PORT
请求端口字符串选项。 -
const PORT_HTTP
HTTP请求端口,示例值。 -
const PORT_HTTPS
HTTPS请求端口,示例值。 -
const QUERY_STRING
查询字符串选项。 -
const QUERY_STRING_DEFAULT
查询字符串,示例值。 -
const ACCEPT
接受头字符串选项。 -
const ACCEPT_HTML
接受HTML头,示例值。 -
const ACCEPT_LANGUAGE
接受语言头字符串选项。 -
const ACCEPT_LANGUAGE_DEFAULT
默认接受语言,示例值。 -
const ACCEPT_CHARSET
接受字符集头字符串选项。 -
const ACCEPT_CHARSET_DEFAULT
默认字符集头,示例值。 -
const ACCEPT_ENCODING
接受编码头字符串选项。 -
const ACCEPT_ENCODING_DEFAULT
默认接受编码头,示例值。 -
const USER_AGENT
用户代理头字符串选项。 -
const USER_AGENT_DEFAULT
默认用户代理头,示例值。 -
const REFERER
来源头字符串选项。 -
const REFERER_DEFAULT
默认来源头,示例值。 -
const REMOTE_IP
远程IP地址字符串选项。 -
const REMOTE_IP_LOCAL
本地远程IP地址,示例值。 -
const REMOTE_PORT
远程端口字符串选项。 -
const REMOTE_PORT_DEFAULT
默认远程端口,示例值。 -
const REQUESTED_WITH
“x-requested-with”头字符串选项。 -
const REQUESTED_WITH_AJAX
Ajax的“x-requested-with”头,示例值。 -
string getRoutePath()
返回路由路径。 -
string getScriptName()
返回执行的脚本名称。 -
string getMethod()
返回HTTP请求方法。 -
string getHost()
返回HTTP主机名称。 -
string getHostIP()
返回HTTP主机IP地址。 -
string getScheme()
返回HTTP请求方案。 -
bool isHttps()
当请求方案是HTTPS时返回true。 -
string getPort()
返回HTTP请求端口。 -
string getQueryString()
返回HTTP请求查询字符串。 -
string getBasePath()
返回HTTP根目录。 -
string getUri()
返回请求URI。 -
string getGatewayInterface()
返回服务器网关接口标识符。 -
string getServerSoftware()
返回服务器软件标识符。 -
string getAccept()
返回HTTP接受头值。 -
string getAcceptLanguage()
返回HTTP接受语言头值。 -
string getAcceptCharset()
返回HTTP接受字符集头值。 -
string getAcceptEncoding()
返回HTTP接受编码头值。 -
string getUserAgent()
返回HTTP请求用户代理。 -
string getReferer()
返回HTTP引用头值。 -
string getRemoteIP()
返回HTTP远程IP地址。 -
string getRemotePort()
返回HTTP远程端口。 -
bool isAjax()
当请求是通过Ajax发出的时返回true。 -
array static defaults(array $overrides = [])
返回默认HTTP请求选项,示例值。
ConsoleRequest
-
const COMMAND
控制台命令字符串选项。 -
string getCommand()
返回控制台命令。 -
array static defaults(array $overrides = [])
返回默认控制台请求选项,示例值。
开发
静态分析
composer analyse
编码风格检查
composer check
编码风格修正
composer fix
测试
composer test
Git预提交设置
ln -s ../../pre-commit .git/hooks/pre-commit
补充
请,如果您对这个库感兴趣,请报告任何问题,并毫不犹豫地贡献。我们将非常感激对这个库发展的任何贡献。