narrowspark / http-emitter
此包已废弃,不再维护。没有建议的替代包。
发射psr-7响应。
v2.0.4
2021-05-17 07:23 UTC
Requires
- php: ^8.0
- psr/http-message: ^1.0
- thecodingmachine/safe: ^1.3.3
Requires (Dev)
- ext-json: *
- laminas/laminas-diactoros: ^2.5.0
- mockery/mockery: ^1.4.2
- narrowspark/coding-standard: ^5.2.2
- phpunit/phpunit: ^9.5.2
- psalm/plugin-mockery: ^0.7.0
- thecodingmachine/phpstan-safe-rule: ^1.0.1
Provides
- dev-main / 2.0.x-dev
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v1.0.0
- 0.8.0
- 0.7.0
- v0.6.0
- v0.5.0
- v0.4.3
- v0.4.2
- v0.4.1
- v0.4.0
- v0.3.0
- v0.2.2
- v0.2.1
- v0.2.0
- v0.1.3
- v0.1.2
- v0.1.1
- v0.1.0
- dev-renovate/node-16.x
- dev-renovate/stefanzweifel-git-auto-commit-action-4.x
- dev-renovate/node-14.x
- dev-renovate/actions-setup-node-3.x
- dev-renovate/anolilab-textlint-config-4.x
- dev-renovate/codecov-codecov-action-2.x
- dev-renovate/actions-stale-4.x
- dev-renovate/anolilab-textlint-config-3.x
- dev-renovate/major-2-dependencies-(major)
- dev-renovate/devdependencies-(non-major)
- dev-dependabot/add-v2-config-file
- dev-feature/template/sync/narrowspark/php-library-template
This package is auto-updated.
Last update: 2023-03-20 19:23:34 UTC
README
向PHP服务器API发射响应。
可用的发射器实现。
- `Narrowspark\HttpEmitter\SapiEmitter`
- `Narrowspark\HttpEmitter\SapiStreamEmitter`.
注意:每个实现都使用原生PHP函数
header()
和echo
来发射响应。
注意:如果已发送头信息,或者存在输出缓冲区,且长度非零,发射器将抛出异常,因为混合PSR-7 / 输出缓冲区内容会导致阻塞问题。
如果您通过
echo
、var_dump
等方式发射内容,或者没有捕获PHP错误/异常,您需要修改您的应用程序,使其始终与PSR-7响应一起工作。或者提供自己的发射器,允许混合输出机制。
安装
composer require narrowspark/http-emitter
使用
如何使用SapiEmitter
<?php use Narrowspark\HttpEmitter\SapiEmitter; $response = new \Response(); $response->getBody()->write("some content\n"); $emitter = new SapiEmitter(); $emitter->emit($response);
如果您缺少 Content-Length
头信息,可以使用 \Narrowspark\HttpEmitter\Util\Util::injectContentLength
静态方法。
<?php use Narrowspark\HttpEmitter\Util; $response = new \Response(); $response = Util::injectContentLength($response);
版本控制
此库遵循语义版本控制,对代码规则集的添加在主要版本中执行。
变更日志
请查看CHANGELOG.md
。
贡献
行为准则
许可证
此包使用MIT许可证。
请查看LICENSE.md
。