1

パラメータ (別のモデル関数の戻り値) をモデル クラスの関数に渡す方法を教えてください。

ここに私のモデルクラス関数があります

public function get_products_categories()
{
$query = $this->db->query('SELECT DISTINCT category 
                           FROM products');
return $query->result_array();
}   


public function get_products_names($category)
{
$query = $this->db->query('SELECT name 
                           FROM products
                           WHERE category=$category');
return $query->result_array();
}   

そして、これが私がコントローラークラスでやっている方法です

$this->load->model('products_model');
    $data['products_categories'] = $this->products_model->get_products_categories();
    $data['products_names'] = $this->products_model->get_products_names();

今私が欲しい$products_categoriesのは関数に渡すことです$this->products_model->get_products_names();が、これは$products_categories不可能ですここではコントローラークラスでは変数ではありませんが、ビューファイルでは変数として使用できます

何か案は ?

4

2 に答える 2

1

何をしたいですか?たとえば、カテゴリ内のすべての製品を一覧表示する場合は、次のようにすることができます。

$data['products_categories'] = $this->products_model->get_products_categories();
$data['products_names'] = array();

foreach($data['products_categories'] as $product){
  $data['products_names'][$product['category']] = $this->products_model->get_products_names($product['category']);
}
于 2012-08-16T20:32:25.737 に答える
0

次のように試してください:

$this->load->model('main_model');
$data1 = $this->main_model->function1();

// data1 を fun2() に渡したくない場合

$data2 = $this->main_model->function2($data1);

2 番目の楽しみが別のモデルにある場合は、それを読み込んでから次のように指定します。

$data2 = $this->another_model->function2($data1);

それがうまくいくことを確認してください.....

于 2012-08-21T09:07:33.950 に答える