View 类別
View 类別做为一个包裝嵌入式 PHP 的 HTML 頁面的物件,稱为「檢視」。
變数可以被指派給檢視物件,并且可以在檢視內本地引用。
閱讀更多關於檢視。
__construct($file = null, $data = null, $filter = null)
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$file |
null
|
檢視档案名稱,如果沒提供你之後必須透過 set_filename 或在 render 中提供。檢視档案應該被對應到 app/views 目录。 |
$data |
null
|
值的陣列 |
$filter |
null
|
設定为 true 或 false 來設定自动编码,預設是主要配置設定(app/config/config.php) |
|
回傳 |
一个新的 View 物件 |
範例 |
$view = new View('path/to/view', array(
'menu' => $menu,
'articles' => $articles,
'footer_links' => $footer_links,
));
|
forge($file = null, $data = null, $filter = null)
forge 方法回傳一个新的 View 物件。
靜態 |
是 |
參数 |
參数 |
預設 |
描述 |
$file |
null
|
檢視档案名稱,如果沒提供你之後必須透過 set_filename 或在 render 中提供。檢視档案應該被對應到 app/views 目录,并且不提供 .php 副档名。 |
$data |
null
|
值的陣列 |
$filter |
null
|
設定为 true 或 false 來設定自动编码,預設是主要配置設定(app/config/config.php) |
|
回傳 |
一个新的 View 物件 |
範例 |
// 将建立一个對 APPPATH/ 的 View 物件
$view = View::forge('path/to/view', array(
'menu' => $menu,
'articles' => $articles,
'footer_links' => $footer_links,
));
|
auto_filter($filter = true)
auto_filter 方法設定在 View 實例上是否编码資料。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$filter |
true
|
在 View 實例上是否编码資料 |
|
回傳 |
目前 View 物件 |
範例 |
$view = View::forge('path/to/view', array(
'menu' => $menu,
'articles' => $articles,
'footer_links' => $footer_links,
));
$view->auto_filter();
// 或設定它为 false
$view->auto_filter(false);
// 或鍊結
$view = View::forge('path/to/view', array(
'menu' => $menu,
'articles' => $articles,
'footer_links' => $footer_links,
))->auto_filter();
|
set_filename($file)
set_filename 方法能让你設定或變更檢視档案名稱。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$file |
必要 |
檢視档案名稱,檢視档案應該被對應到 app/views 目录,并且不提供 .php 副档名。 |
|
回傳 |
目前 View 物件 |
範例 |
$view = new View();
$view->set_filename('path/to/view');
|
get($key = null, $default = null)
get 方法檢索一个或全部設定在檢視上的變数。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$key |
null
|
變数名稱 |
$default |
null
|
如果變数沒設定要回傳的預設值 |
|
回傳 |
混合 |
範例 |
// 建立一个檢視并設定一些資料
$view = new View;
$view->set(array('field1' => 'value1', 'field2' => 'value2');
// 取得单一值
$field1 = $view->get('field1');
// 取得单一值,設定一个預設值如果該欄位不存在
$field3 = $view->get('field3', 'value3');
// 取得所有值
$fields = $view->get();
|
set($key, $value = null, $filter = null)
set 方法指派一个變数到檢視。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$key |
必要 |
變数名稱或變数陣列 |
$value |
null
|
值 |
$filter |
null
|
設为 true 或 false 來编码,預設是主要自动编码設定 |
|
回傳 |
目前 View 物件 |
範例 |
$view = new View;
$view->set('users', $users, false);
// 或設定一个陣列
$view->set(array(
'users' => $users,
'articles' => $articles,
), null, true);
// 當编码輸出啟用時,
// 如果你需要傳遞 HTML/Javascript,你需要設定最後參数为 false。
$view->set('example', '<h1>Heading</h1>', false);
|
set_safe($key, $value = null)
與 set()
相同,除了它預設不在輸出時编码變数。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$key |
必要 |
變数名稱或變数陣列 |
$value |
null
|
值 |
|
回傳 |
目前 View 物件 |
範例 |
$view = new View;
$view->set_safe('users', $users);
// 或設定一个陣列
$view->set_safe(array(
'users' => $users,
'articles' => $articles,
), null);
|
set_global($key, $value = null, $filter = null)
set_global 方法設定一个可存取的變数給所有檢視。
靜態 |
是 |
參数 |
參数 |
預設 |
描述 |
$key |
必要 |
變数名稱或變数陣列 |
$value |
null
|
值 |
$filter |
null
|
設为 true 或 false 來编码,預設是主要自动编码設定 |
|
回傳 |
空 |
範例 |
View::set_global('users', $users, false);
// 或設定一个陣列
View::set_global(array(
'users' => $users,
'articles' => $articles,
), null, true);
|
bind($key, $value = null)
透過參照指派一个值。綁定的好处是該值可以被修改,而不須重新設定它們。
也可能在變数有值之前綁定它們。在檢視档案中,
指派值将可被做为一个變数。
請注意:这些不能被编码輸出淨化,因此應該被認为是不安全的。
靜態 |
否 |
參数 |
參数 |
預設 |
描述 |
$key |
必要 |
變数名稱或變数陣列 |
$value |
null
|
值 |
|
回傳 |
目前 View 物件 |
範例 |
$view = new View;
$view->bind('users', $users, false);
// 或設定一个陣列
$view->bind(array(
'users' => $users,
'articles' => $articles,
), null, true);
|
bind_global($key, $value = null)
bind_global 方法透過可存取的參照为所有檢視指派一个全域的變数。
請注意:这些不能被编码輸出淨化,因此應該被認为是不安全的。
靜態 |
是 |
參数 |
參数 |
預設 |
描述 |
$key |
必要 |
變数名稱 |
$value |
必要 |
值 |
|
回傳 |
空 |
範例 |
View::bind_global('users', $users);
|
render($file = null)
render 方法呈现檢視物件为一个字串。
全域和本地資料会合併并提取給檢視档案,來建立本地變数。
靜態 |
否 |
參数 |
參数 |
类型 |
預設 |
描述 |
$file |
字串 |
null
|
沒有副档名的檢視档案名稱 |
|
回傳 |
呈现的檢視档案 |
範例 |
$html = View::forge()->render('path/to/view');
// 或
$html = View::forge('path/to/view')->render();
// 或
$html = View::forge()->set_filename('path/to/view')->render();
|
程序助手
render($view, $data = array(), $auto_filter = null)
render 函式是 View::render 的別名。
參数 |
參数 |
类型 |
預設 |
描述 |
$view |
字串 |
必要 |
沒有副档名的檢視档案名稱 |
$data |
陣列 |
array()
|
要被傳遞給檢視的資料陣列 |
$auto_filter |
布林 |
null
|
是否過濾資料 |
|
回傳 |
字串,來自 View::render 的結果 |
範例 |
$html = render('path/to/view', $data_array);
|