0

これら 2 つの形式のどちらが Codeigniter でより効率的か疑問に思います。オプション 1 では、データ配列がすべてのビューに渡されます。オプション 2 では、各データ配列に異なる名前を付けて、各ビューにすべての情報を忘れないようにしています。オプション 2 が正しいと仮定したいのですが、つまり、各ビューに不要な情報を費やさずに、各配列の名前を変更するということです。私は正しいですか?コードイグナイターかどうかは関係ありませんか?投稿を読んでくれてありがとう

オプション1

public function alguna_funcion(){


       $data['datos1'] = $this->modelo->function1();
       $data['widget1'] = $this->load->view('widget1',$data,TRUE);
       $data['datos2'] = $this->modelo->function2();
       $data['widget2'] = $this->load->view('widget2',$data,TRUE);
       $data['datos3'] = $this->modelo->function3();
       $data['widget3'] = $this->load->view('widget3',$data,TRUE);
       $data['datos4'] = $this->modelo->function4();
       $data['widget4'] = $this->load->view('widget4',$data,TRUE);

       $this->load->view('home_view',$data);


   }

オプション 2

public function alguna_funcion(){


       $data1['datos1'] = $this->modelo->function1();
       $data['widget1'] = $this->load->view('widget1',$data1,TRUE);
       $data2['datos2'] = $this->modelo->function2();
       $data['widget2'] = $this->load->view('widget2',$data2,TRUE);
       $data3['datos3'] = $this->modelo->function3();
       $data['widget3'] = $this->load->view('widget3',$data3,TRUE);
       $data4['datos4'] = $this->modelo->function4();
       $data['widget4'] = $this->load->view('widget4',$data4,TRUE);

       $this->load->view('home_view',$data);


   }
4

2 に答える 2

1

さてあなたはこのようにそれを行うことができます

public function alguna_funcion()
{
    $data['datos'] = $this->modelo->function1();
    $data['widget1'] = $this->load->view('widget1',$data,TRUE);
    unset($data['datos']);

    $data['datos'] = $this->modelo->function2();
    $data['widget2'] = $this->load->view('widget2',$data,TRUE);
    unset($data['datos']);

    $data['datos'] = $this->modelo->function3();
    $data['widget3'] = $this->load->view('widget3',$data,TRUE);
    unset($data['datos']);

    $data['datos'] = $this->modelo->function4();
    $data['widget4'] = $this->load->view('widget4',$data,TRUE);
    unset($data['datos']);

    // Now you have only widgets pass them to view
    $this->load->view('home_view',$data);
}
于 2013-02-04T17:48:08.113 に答える
0

CodeIgniter のせいではありません。data_i がすべて同じである限り、それらの要素へのアクセスは、示されている 2 つの方法のいずれかで行うことができ、後者の場合は冗長に見えます。

于 2013-02-04T14:41:24.690 に答える