为了账号安全,请及时绑定邮箱和手机立即绑定

“翻译”数组的最佳方式?

“翻译”数组的最佳方式?

PHP
守候你守候我 2022-08-05 10:52:56
所以,我有一个想要“转换”的数组(只添加该数组的一些值,到具有不同键的不同数组)。最好的方法是什么?我目前有一种方法可以做到这一点,但我认为有更好的方法来做到这一点。例如:一个 API 返回以下内容:[   'id' => 1,   'title' => 'Response title',   'message' => 'Here is a message',   'clueless' => true,   'need_help' => true]但是对于我的前端,我需要这个:[       'task_id' => 1,       'text' => 'Response title',       'message' => 'Here is a message']请注意,这些值是相同的,但只有它们的键不同。另外,有些值我不需要。我目前的方法如下所示:public function toSpecificFormat($data) {   return [      'task_id' => $data['id'],      'text' => $data['title'],      'message' => $data['message']   ];}
查看完整描述

1 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

根据您真正需要重写的字段数量,您可能希望创建如下所示的键映射:


$src = [

   'id' => 1,

   'title' => 'Response title',

   'message' => 'Here is a message',

   'clueless' => true,

   'need_help' => true

];


$map = ['id' => 'task_id',

        'title' => 'text',

        'message' => 'messsage',

       ];


$result = [];

foreach($map as $from => $to) {

   $result[$to] = $src[$from];

}


print_r($result);

但是,如果你有更多的键来“重写”,那么这种方法比手动复制更灵活,但是如果一个人只有几个(比如2或3个),那么OP的代码是完全足够的,在我的答案中显示的方式只是一个明显的过度工程。


查看完整回答
反对 回复 2022-08-05
  • 1 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信