0

データベースに 2 つのテーブルがあるとしますsitessitetype1

sites次の列があります。

Slug Name Url

slug1 Site1 site1.com

slug2 Site2 site2.com

sitetype1次の列があります。

Slug Description

slug1 Description for site1

slug2 Description for site2

codeigniter では、理想的にはこれらの値をフェッチして、name=>slugのペアに存在するようにする必要があります。

だから私は次のような配列を取得しようとしています:

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

以前は、テーブルからスラッグをフェッチし、sitetype1それらを循環させて配列nameから対応する値をフェッチするという非常に非効率的な方法でそれを行っていました。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"
  }
}
4

1 に答える 1