データベースに 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"
}
}