2014-01-13 86 views
1

我可以從codeeriter中的助手加載視圖嗎?我一直在尋找禮物,但似乎沒有人討論過它。從幫手Codeigniter加載視圖?

+1

這不是在文檔的幫手部分記錄,但[「創建庫」部分(你的圖書館內利用CodeIgniter的參考資料) ](http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html)。這有點令人困惑。 –

回答

4

是的,你可以。創建你的助手,說views_helper.php

if(!function_exists('view_loader')){ 

    function view_loader($view, $vars=array(), $output = false){ 
    $CI = &get_instance(); 
    return $CI->load->view($view, $vars, $output); 
    } 
} 

$view是視圖文件名(如你通常會使用),並$vars你想傳遞(如你通常會做)數組變量,傳遞一個true作爲可選的第三個參數使其返回(正常情況下會發生)作爲內容,而不是僅僅加載它;

只需加載你的助手(或自動加載它):

$this->load->helper('views'); 
$data = array('test' => 'test'); 
view_loader('myview', $data) 
+0

不錯!但也許你可以添加直接輸出的第三個參數? – thpl

+0

@ThomasDavidPlat謝謝,更新回答,以反映您的建議 –

+0

我在搜索'$ page = $ this-> load-> view('view',$ data,TRUE)時發現了這個問題;',可以將上面的參數(代表文件名,變量,視圖中的可選參數)? –