利用 firebase/php-jwt 库,在 PHP 中创建、解析、验证和获取 JWT 令牌的步骤:1. 安装库;2. 使用 JWT 类创建令牌;3. 使用 JWT::decode() 解析令牌;4. 使用 JWT::verify() 验证令牌;5. 获取有效载荷。

如何使用 PHP JWT
JSON Web 令牌 (JWT) 是一种轻量级、紧凑的数据结构,用于在各方之间安全地传输信息。在 PHP 中使用 JWT 非常简单,只需几个步骤:
1. 安装依赖
使用 Composer 安装 firebase/php-jwt 库:
立即学习“PHP免费学习笔记(深入)”;
<code class="bash">composer require firebase/php-jwt</code>
2. 创建令牌
使用 JWT 类创建一个新 JWT:
<code class="php">use Firebase\JWT\JWT; $payload = ['user_id' => 1, 'exp' => time() + 3600]; // 有效期为一小时 $token = JWT::encode($payload, 'your_secret_key');</code>
3. 解析令牌
要解析 JWT,请使用 JWT::decode() 方法:
<code class="php">$decoded_token = JWT::decode($token, 'your_secret_key', ['HS256']);</code>
4. 验证令牌
验证令牌是否有效,请使用 JWT::verify() 方法:
<code class="php">try {
JWT::verify($token, 'your_secret_key', ['HS256'], 300); // 允许在签发后 5 分钟内使用令牌
// 令牌有效
} catch (Exception $e) {
// 令牌无效
}</code>5. 获取有效载荷
要获取 JWT 的有效载荷,请使用 $decoded_token->payload:
<code class="php">$user_id = $decoded_token->payload->user_id;</code>
提示:
your_secret_key 替换为应用程序的唯一密钥。exp 字段指定令牌的到期时间。HS256 是 JWT 签名的算法,可以更改为其他算法(例如 RS256)。以上就是php jwt怎么用的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号