temant / cookie-manager
一个用于安全高效处理HTTP Cookie的全面PHP实用类。
5.0.0
2024-03-25 13:53 UTC
Requires
- php: ^8.3
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^11.0
README
CookieManager
是一个全面PHP实用类,旨在安全高效地管理HTTP Cookie。它抽象了Cookie管理中的复杂性,提供了一种直观的接口来设置、检索、检查和删除Cookie。它内置了对现代Web安全功能的支持,如HttpOnly、Secure标志和SameSite属性,确保您的Web应用程序以安全的方式处理Cookie。
功能
- 安全Cookie设置:轻松设置带有广泛选项的Cookie,确保符合安全最佳实践。
- Cookie检索:安全地检索指定Cookie的值,降低未经授权访问的风险。
- Cookie存在检查:快速检查Cookie是否存在,允许根据Cookie可用性进行条件逻辑。
- Cookie删除:高效删除Cookie,支持路径、域和安全属性等高级选项。
- 现代安全合规性:采用HttpOnly、Secure标志和SameSite属性,增强对常见Web漏洞(如CSRF和XSS)的保护。
安装
使用Composer安装 CookieManager
以无缝将其集成到您的PHP项目中
composer require temant/cookie-manager
用法
将 CookieManager
集成到您的项目中很简单。以下是一些常见的用例
设置Cookie
use Temant\CookieManager\CookieManager; // Set a cookie with a 1-hour expiration CookieManager::set('cookie_name', 'abc123', time() + 3600);
检索Cookie
// Get the value of a cookie $userSession = CookieManager::get('cookie_name');
检查Cookie
// Check if a cookie exists $isLoggedIn = CookieManager::has('cookie_name');
删除Cookie
// Delete a cookie CookieManager::delete('cookie_name');
贡献
贡献使开源社区成为一个如此美妙的学习、灵感和创造的地方。您所做的任何贡献都受到极大的赞赏。
如果您有任何可以使这更好的建议,请Fork存储库并创建一个pull request。您也可以简单地打开一个带有“enhancement”标签的问题。别忘了为项目加星!再次感谢!
- Fork项目
- 创建您的功能分支(
git checkout -b feature/AmazingFeature
) - 提交您的更改(
git commit -m 'Add some AmazingFeature'
) - 将更改推送到分支(
git push origin feature/AmazingFeature
) - 打开Pull Request
运行测试
要运行测试,导航到项目目录并运行以下命令
phpunit --bootstrap vendor/autoload.php tests
确保您已正确安装并配置了PHPUnit。
许可协议
在MIT许可证下分发。有关更多信息,请参阅 LICENSE
。