読者です 読者をやめる 読者になる 読者になる

include記法

プログラミング Wiki

ほかのファイルをincludeできる記法とかあったら便利かも?と思って作ってみた。
元々, ViewにはSmartyをフル活用してるのでSmartyのinclude関数を利用して実装。

id:test;file:test.tplと書くと,

<div id="test">
   {-include file="test.tpl"-}
</div>

に変換。

コードは以下のような感じ。

private function includeTplFile(){    	
    $text = "";
    $lines = explode("\n", $this->text);     //1行毎に配列に詰め込む
    	
    foreach($lines as $line){
    	if(preg_match("/^id:(.+);file:(.+)<br \/>$/", $line, $ret)){				
	        $id = $ret[1];
		$file = $ret[2];
	        $line = "<div id=\"$id\">\n".
		        "\t{-include file=\"contents/$file\"-}\n".
		        "</div>";
    	}
    	$text .= $line."\n";
    }
    $this->text = $text;
}