【问题标题】:want to convert a key value pair to standard class object想要将键值对转换为标准类对象
【发布时间】:2020-07-24 12:59:11
【问题描述】:

您好,我需要帮助 [这是我的表结构] 和我当前的 [JSON 响应是这样的],我想将其转换为 [像这样的 JSON 响应] 任何人都可以提供一些想法或任何相关代码,以便我可以做出这样的 JSON 响应。

*注意我不能创建另一个表来存储用户图像

【问题讨论】:

  • 这能回答你的问题吗? How to convert an array to object in PHP?
  • 我想要 optnl_img1, optnl_img2 .....这个密钥对作为一个对象。
  • 所以?然后先将它们压入数组,然后将其转换为对象。
  • 如果你分享任何类似的代码会很有帮助。

标签: php json api rest


【解决方案1】:

首先,您不需要将 base_url 连接到所有图像,您可以在前端文件中单独使用它,除非它必须存在。

其次,您不需要将 user_id 存储到您的图像结构中,因为您的表结构中就有 id。

不管怎样,你可以在下面做类似 sn-p 的事情。

我希望它工作正常:)

编辑:

在 PHP 中使用数组更容易,所以我将我的代码转换为数组版本,如果您需要使用对象,请先将对象转换为数组,然后在 sn-p 之后将其转换为对象,如 (object) $data

    foreach ($data as &$user) {
    if(!empty($user['main_image'])) {
        $user['main_image'] = $image_basepath . $user['main_image'];
    }

    $user['image'] = [];

    for($i = 1; $i <= 6; $i++) {
        $imgArr = [];
        $img = $user['optnl_img' . $i];
        unset($user['optnl_img' . $i]);

        if(isset($img) && !empty($img)) {
            $imgArr['id'] = $i;
            $imgArr['user_id'] = $user['id'];
            $imgArr['image'] = $image_basepath . $img;
        }

        $user['image'][] = $imgArr;
    }
}

【讨论】:

  • 你好,你得到了我想要的东西,非常感谢你,但我只得到最后一张图片,我需要所有这样的图片。
猜你喜欢
  • 2012-02-05
  • 2022-08-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-10
  • 1970-01-01
相关资源
最近更新 更多