php - 使用 PHP 从 json 中转换和删除括号
问题描述
简化此 json 的最佳方法是什么?我的函数返回一个像这样的 json:
{
"token": {
"0": "MJfdZLQRsu42VmUFzc9jozCa6mtJ0KJwziBEv3IXfr9RW_uhws",
"user_id": 123,
"username": "name"
}
}
我的目标是实现这一目标:
{
'token': "MJfdZLQRsu42VmUFzc9jozCa6mtJ0KJwziBEv3IXfr9RW_uhws",
'username: "name",
'user_id': '168'
}
这是返回 json 的方法:
class MyJWTManager extends JWTManager
{
public function create(UserInterface $user)
{
$payload = ['roles' => null];
$this->addUserIdentityToPayload($user, $payload);
$jwtCreatedEvent = new JWTCreatedEvent($payload, $user);
$this->dispatcher->dispatch(Events::JWT_CREATED, $jwtCreatedEvent);
$jwtString = $this->jwtEncoder->encode($jwtCreatedEvent->getData());
$jwtEncodedEvent = new JWTEncodedEvent($jwtString);
$this->dispatcher->dispatch(Events::JWT_ENCODED, $jwtEncodedEvent);
return [
$jwtString,
'user_id' => $user->getId(),
'username' => $user->getUsername()
];
// return $jwtString // outputs "token": "ssdsmdmasdms;dm;samd;msdm;sdm;sdm"
//return $userInfo;
}
}
解决方案
提取令牌值并将其作为返回数组的一部分返回
class MyJWTManager extends JWTManager
{
public function create(UserInterface $user)
{
$payload = ['roles' => null];
$this->addUserIdentityToPayload($user, $payload);
$jwtCreatedEvent = new JWTCreatedEvent($payload, $user);
$this->dispatcher->dispatch(Events::JWT_CREATED, $jwtCreatedEvent);
$jwtString = $this->jwtEncoder->encode($jwtCreatedEvent->getData());
$jwtEncodedEvent = new JWTEncodedEvent($jwtString);
$this->dispatcher->dispatch(Events::JWT_ENCODED, $jwtEncodedEvent);
$ra=json_decode($jwtString,1);
return [
'token' => $ra['token'],
'user_id' => $user->getId(),
'username' => $user->getUsername()
];
}
}
推荐阅读
- python - 如何在 NLTK Python 中将依赖图保存为图像
- postgresql - 如何在 SQL 中对单个列进行 GROUP BY?
- javascript - [Solidity][Metamask] Metamask 不再注入 web3
- qt - 如何在 Qt 中实现多层框架或小部件?
- javascript - 即使有 jquery,引导程序也不返回 jquery
- zend-framework - Laminas:每个模块的不同布局文件
- php - 如何在ajax请求成功响应之前重定向
- python - Python Pandas:如何按时间删除行?
- shopify - 如何用 Slick Slider - Shopify Debut 主题上的“添加到购物车”按钮替换供应商?
- javascript - 在 Katacoda 环境中使用 Docker 部署时收到 CORS 错误