php - 使用 codeigniter 将不同表中的值获取到单个数组中?

标签 php mysql codeigniter activerecord

假设我的数据库中有两个表:sitessitetype1

sites 具有以下列:

Slug 名称 网址

slug1 Site1 site1.com

slug2 Site2 site2.com

sitetype1 具有以下列:

Slug 描述

slug1 site1 的说明

slug2 site2 的说明

在 codeigniter 中,理想情况下我需要获取这些值,以便它们驻留在 name => slug 对中。

所以我试图得到一个看起来像这样的数组:

['Site1' => 'slug1', 'Site2' => 'slug2']

以前,我通过一种极其低效的方法来完成此操作,即从 sitetype1 表中获取 slugs,然后循环遍历这些内容并从sites 数组。这似乎是一种过于复杂的处理方式。我正在寻找连接来完成任务,但我对 MySQL 非常不好,需要一些帮助。

我已经尝试过这个:

$this->db->select('name','slug');
$this->db->from('sites');
$this->db->join('sitetype1', 'sitetype1.slug = sites.slug','inner');

但是它只返回相应的name值。从这里开始有人可以帮助我吗?

这是它返回的示例:

array(2) {
  [0]=>
  object(stdClass)#22 (1) {
    ["name"]=>
    string(5) "Site1"
  }
  [1]=>
  object(stdClass)#23 (1) {
    ["name"]=>
    string(5) "Site2"
  }
}

最佳答案

你应该使用像;)

$this->db->select('sites.name, sitetype1.slug');

错误: 'name','slug'

右: '名称,slug'

关于php - 使用 codeigniter 将不同表中的值获取到单个数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18275646/

相关文章:

php - 在 PHP 中按数组键的值对字典中的数组进行排序

php - Crontab 不工作 Ubuntu

mysql - 需要一些有关使用 SQLite 表的帮助(关于性能)

php - 通过多个不同名称的复选框从mysql获取数据

php mysql 问题

javascript - 用 javascript/jquery 替换选择输入

javascript - PHP select from 语句when,不起作用

javascript - 如何让字符串在javascript函数中包含'

php - 无法将 .png ext 保存到 Laravel 数据库中

带有 DATEDIFF 的 MySQL 查询