万维当云伯乐 CDN华纳云
PHP技术2024-10-24979 阅读

我的mysql数据库表类型是:COMPACT 我现在想查询这里面的数据,以数组形式返回

本文摘要我的mysql数据库表类型是:COMPACT 我现在想查询这里面的数据,以数组形式返回 比如 title=>"百度", title1=>"百度2" 要将查询结果以键值对数组的形式返回,可以将查询结果转换为数组,并将其整理为你想要的格式。下面是修改后的 details 方法实现: public function deta
丽萨主机
AD:
【广告招商】文章正文文字广告位开放合作
我的mysql数据库表类型是:COMPACT 我现在想查询这里面的数据,以数组形式返回 比如
title=>"百度",
title1=>"百度2"
要将查询结果以键值对数组的形式返回,可以将查询结果转换为数组,并将其整理为你想要的格式。下面是修改后的 details 方法实现:
public function details(Request $request)
{
    try {
        $model = new ConfigModel();

        // 获取所有设置
        $list = $model->select(['setting', 'value']);

        // 转换为键值对数组
        $result = [];
        foreach ($list as $item) {
            $result[$item['setting']] = $item['value'];
        }

        return show($result); // 返回键值对数组
    } catch (\Exception $e) {
        return show(null, 201, $e->getMessage());
    }
}

解释修改部分

  1. $model->select(['setting', 'value']): 选择 setting 和 value 字段,获取所有配置。
  2. 循环处理: 将查询结果遍历并构建 $result 数组,其中使用 $item['setting'] 作为键, $item['value'] 作为值。
  3. 返回结果: 使用 show($result) 返回以键值对形式展示的数据。

这样,你调用 details 方法时会得到类似于以下形式的 JSON 响应:

{
    "title": "百度",
    "title1": "百度2",
    ...
}
 
广告招商文章内容详情页下 · 优质席位开放中合作咨询