View クラス
View クラスは、"ビュー" と呼ばれる PHP コードが埋め込まれた HTML ページのラッパーとして機能します。
変数は view オブジェクトに割り当てられ、ビューの中でローカル参照できます。
ビューを使用する方法はこちらを参照ください。
__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 メソッドは、ビューにセットする 1 つまたは全ての変数を取得します。
静的 |
いいえ |
パラメータ |
パラメータ |
デフォルト |
説明 |
$key |
null
|
変数名 |
$default |
null
|
変数が存在しなかったときに返されるデフォルト値 |
|
返り値 |
mixed |
例 |
// view を作成し、データをセットする
$view = new View;
$view->set(array('field1' => 'value1', 'field2' => 'value2');
// 1 つの値を取得
$field1 = $view->get('field1');
// 1 つの値を取得、もしフィールドが存在しなかった場合はデフォルトがセットされる
$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 でセットします。メインの自動エンコーディング設定がデフォルトとなります。 |
|
返り値 |
Void |
例 |
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 |
必須 |
値 |
|
返り値 |
Void |
例 |
View::bind_global('users', $users);
|
render($file = null)
render メソッドは、view オブジェクトを文字列へレンダリングします。
グローバルとローカルのデータはマージされて、ビューファイル内のローカル変数として展開されます。
静的 |
いいえ |
パラメータ |
パラメータ |
型 |
デフォルト |
説明 |
$file |
string |
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 |
string |
必須 |
拡張子なしのビューファイル名 |
$data |
array |
array()
|
view へ渡すデータの配列 |
$auto_filter |
bool |
null
|
データをフィルターするかしないか |
|
返り値 |
string 。View::render の結果 |
例 |
$html = render('path/to/view', $data_array);
|