knplabs / php-valid
此包已被弃用且不再维护。未建议替代包。
一个 HTTP 缓存验证工具包
dev-master / 0.x-dev
2013-10-15 16:08 UTC
Requires
Requires (Dev)
- behat/behat: ~3@dev
- doctrine/orm: ~2.4
- phpspec/phpspec: ~2@dev
- symfony/framework-bundle: ~2
- symfony/http-kernel: ~2
Suggests
- doctrine/common: to use Doctrine listener rule
- symfony/http-kernel: to use kernel events and stackphp
This package is auto-updated.
Last update: 2022-09-23 13:38:22 UTC
README
什么是
一个用于管理 HTTP/1.1 缓存验证头部的 php 5.3+ 库,使用 symfony/HttpFoundation 层。
为什么
因为没有已知库可以提供一种干净、解耦的方式来管理它们。实际的 文档 只展示了脏控制器示例。
如何
通过观察请求并询问 Rule
实例,自上次客户端请求以来响应是否已更改,可以使用 If-Modified-Since 或 ETag 头。
安装
composer require "knplabs/valid=~0.1@dev"
使用
<?php class CustomRule implements Knp\Valid\Rule\LastModified, Knp\Valid\Rule\ETag { public function supports(Request $request) { return true; } public function getETag(Request $request) { return 'something'; } public function getLastModified(Request $request) { return new \DateTime; } } $kernel = new AppCache( new Knp\Valid\Kernel( new AppKernel('prod', false), new Knp\Valid\ResponseManipulator(array( new Knp\Valid\Doctrine\ListenerRule, new CustomRule, )) ) ); $kernel->handle(Request::createFromGlobals())->send();
贡献
composer install --dev --prefer-dist vim features/**/*.feature behat phpspec desc Knp\Valid\* phpspec run