4

コントローラでビューファイルのパスを取得する方法があるかどうかを尋ねたいと思いました。例えば

class welcome extends controller{

  function __construct(){
       parent::__construct();
  }
  function index(){
     $this->load->view('welcome_message');
  }
  function test(){
     $my_variable = $this->load->view('welcome_message','',TRUE);
  }
  function another_test(){
        ///  $path_to_view = ???;
        ///  echo $path_to_view;
  } 
}

これを取得するためのヘルパー関数があるかどうかを尋ねたいと思います。テストメソッドには、htmlコンテンツを含む変数が含まれています。しかし、私はビューファイルのパスを取得したいですか?

4

2 に答える 2

9

これが適切な方法かどうかはわかりませんが、これを試すことができます。つまりmy_helper.phpapplication/helperフォルダにヘルパーファイルを作成し、このヘルパーファイルに次の関数を貼り付けます。

function get_view_path($view_name)
{
    $target_file=APPPATH.'views/'.$view_name.'.php';
    if(file_exists($target_file)) return $target_file;
}

これを使用するには、最初にヘルパーファイルをロードしてから、関数の引数としてビューの名前を使用して関数を呼び出す必要があります。

$this->load->helper('my_helper');
$path_to_view = get_view_path('welcome'); // Will return the path if welcome.php exists in the view folder.

config.phpを使用して自動ロードできます$autoload['helper'] = array('functions_helper');

于 2012-06-21T11:05:02.493 に答える
7

それは定数でなければなりません:

VIEWPATH
于 2018-01-04T00:04:12.610 に答える