我有一个Web令牌,它可以解码为以下内容:
{
typ: "JWT",
alg: "HS256"
}.
{
iat: 1435688301,
iss: "localhost",
data: {
user_id: 2
}
}.
[signature]
Run Code Online (Sandbox Code Playgroud)
我将其存储在变量$ data中,并且不知道如何访问“ iat”值或“ user_id”。谁能帮我吗?
我试过了
$issuanceDate = $data['iat'];
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。我也需要用户ID,但这嵌套在$ data.data中。
任何帮助将不胜感激,谢谢。
我已经解决了我的问题。我的解决方案:
从php-jwt :: decode返回的已解码令牌'$ data'是一个对象,我只需使用以下命令将其转换为数组
$unencodedData = (array) $data;
Run Code Online (Sandbox Code Playgroud)
并使用访问了“ iat”字段
$issuedAt = $unencodedData['iat'];
Run Code Online (Sandbox Code Playgroud)
同样,该对象包含一个嵌套对象$ data-> data。要访问此对象,我将外部的“ $ data”对象强制转换为上述数组,并访问嵌套的“ data”对象,如下所示:
$user_id = $unencodedData['data']->user_id;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4166 次 |
| 最近记录: |