データベースに 2 つのテーブルがあるとしますsites
。sitetype1
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"
}
}