PHPで簡単にViewクラスを作る
Smartyとかあるけど、PHPの良さってやっぱり半分テンプレートエンジン的な要素があることだと思ってます
わざわざその良さをなくしてしまうことはもったいない!
ここであげるのは、最低限の実装の方法だけ書いているので、
実際のViewクラスとしては使えないレベルのものですが、
ヘルパーの仕組みを作ったり、好みで拡張して簡単にViewクラスが作れます
※ob_start()とob_get_clean()の使い方がポイント!
Viewクラス
<?php class View{ private $_vars; function __construct(){ $this->_vars = array(); } //値のセット public function setValue( $key , $value ){ $this->_vars[$key] = $value; } //値の取得 public function getValue( $key ){ return $this->_vars[$key]; } //レンダリング public function render($file) { ob_start(); include $file; return ob_get_clean(); } }
Template.php
<body> <?=$this->getValue( 'hoge' )?> </body>
実行
<?php $view = new View(); $view->setValue( 'hoge' , 'テスト' ); echo $view->render( 'Template.php' );