1

私は codeignitor を使用しています。現在、自動ロードされる「Common_func」という名前のライブラリがあります。

どこでもこのように呼び出すことができます

$this->Common_func->common_method();

コントローラーとモデルを操作する場合は問題ありませんが、ビューの場合は HTML が見苦しくなります。

テンプレート解析オプションについては知っていますが、それを使用したくありません。

短縮構造でアクセスする方法はありますか。

このように(または単語が最も少ない類似のもの)

Common_func->common_method();

またはこれよりも優れています。

ありがとう。

4

2 に答える 2

3

ベスト プラクティスは、ライブラリをViewファイルでまったく使用しないことです。ライブラリは、コントローラとモデルで使用することを意図しています。ヘルパーはビューに使用されます。これらは、書式設定/コード生成などに役立つランダム関数です。

それにもかかわらず、本当にライブラリとそのメソッドを保持したい場合は、「抽象」ヘルパーを作成できます。これは、ビュー ファイルをクリーンで読みやすくするのに役立ちます。

common_helper.php

function common_method($arg) {
    $ci =& get_instance();
    return $ci->Common_func->common_method($arg);
}

これにより、ライブラリで行われた変更でヘルパーが最新の状態に保たれます。

于 2012-11-19T06:10:58.143 に答える
0

これは codeigniter フォーラムで見つけました。このリンクはあなたを助けるかもしれません

http://codeigniter.com/forums/viewthread/139788/

または、ライブラリ名がこのようにかなり長い場合は、少し縮小できます

class SomeClass extends CI_Controller{
   function __construct(){
      parent::__construct();
      $this->lib=$this->Really_Long_Library_name;
   }
}

この方法で$this->lib、そのメソッドにアクセスできます。

于 2012-11-19T05:55:41.983 に答える