temant/cookie-manager

一个用于安全高效处理HTTP Cookie的全面PHP实用类。

5.0.0 2024-03-25 13:53 UTC

This package is auto-updated.

Last update: 2024-09-25 15:30:50 UTC


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”标签的问题。别忘了为项目加星!再次感谢!

  1. Fork项目
  2. 创建您的功能分支(git checkout -b feature/AmazingFeature
  3. 提交您的更改(git commit -m 'Add some AmazingFeature'
  4. 将更改推送到分支(git push origin feature/AmazingFeature
  5. 打开Pull Request

运行测试

要运行测试,导航到项目目录并运行以下命令

phpunit --bootstrap vendor/autoload.php tests

确保您已正确安装并配置了PHPUnit。

许可协议

在MIT许可证下分发。有关更多信息,请参阅 LICENSE