0

私は多かれ少なかれテーブルを表示するCIアプリを持っています。これらのページでは、PHPExcelを使用して結果をエクスポートしています。現在、コントローラーのロジックは次のようになっています。

if( $this->input->get('export') == 1 ) {

    // Get Data
    // Load up library stuff
    // Prompt for download

    die();

}

$this->load->view('index');

もう少し複雑です。CSV/XLSなどを選択できますが、簡単に言うとそれだけです。このコードは繰り返されるので、ファイル名やタイプなどの設定の配列を受け取る別の場所のメソッドにしたいと思います。それはヘルパー以上のようです。

これは、プライベートコントローラーメソッドを使用した最初の慣らし運転ですか?もしそうなら、それはどのように見えるでしょうか?

4

1 に答える 1

1

この機能を複数の場所で使用する必要がある場合は、ヘルパーが探しています。ただし、機能を複数のメソッドに分割できる場合は、ライブラリを探している可能性があります。

私の考えでは、ヘルパーファイルは、アプリケーションのどこからでも呼び出すことができる関連関数のセットです。ただし、これらの関数は少し自律的です。つまり、互いに別々に呼び出すことができます。したがって、「日付」ヘルパーが良い例になります。日付をさまざまな方法でフォーマットするための個別の関数があります。コンストラクター、セットアップ、破棄などは実際には必要ありません。

一方、ライブラリはヘルパーよりもカプセル化されています。コンストラクターを実行し、コンストラクターに渡す可能性のある変数に基づいてさまざまなメソッドを呼び出す必要がある場合があります。

ライブラリはオブジェクト指向であるため、必要なものに適合しているようです。

プライベートコントローラーメソッドは、実際にはヘルパー関数と同じですが、どこからでも呼び出す必要はありません。同じコントローラー内のコントローラーメソッドにのみ適用できます。

ライブラリを作成して、それを使用します。

于 2013-01-29T22:46:13.497 に答える