Pain 全世界最小最简单的PHP模板引擎 (普通版)

打包下载Pain.php
<div class="codetitle"><a style="CURSOR: pointer" data="69491" class="copybut" id="copybut69491" onclick="doCopy('code69491')"> 代码如下:

<div class="codebody" id="code69491">
<?php
class Pain
{
public $var=array();
public $tpl=array();
//this is the method to assign vars to the template
public function assign($variable,$value=null)
{
$this->var[$variable]=$value;
}
public function display($template_name,$return_string=false)
{
//first find whether the tmp file in tmp dir exists.
if(file_exists("tmp/temp_file.php"))
{
unlink("tmp/temp_file.php");
}
extract($this->var);
$tpl_content=file_get_contents($template_name);
$tpl_content=str_replace("{@","<?php echo ",$tpl_content);
$tpl_content=str_replace("@}"," ?>",$tpl_content);
//create a file in the /tmp dir and put the $tpl_contentn into it,then
//use 'include' method to load it!
$tmp_file_name="temp_file.php";
//$tmp is the handler
$tmp=fopen("tmp/".$tmp_file_name,"w");
fwrite($tmp,$tpl_content);
include "tmp/".$tmp_file_name;
}
}
?>

test.php
<div class="codetitle"><a style="CURSOR: pointer" data="61205" class="copybut" id="copybut61205" onclick="doCopy('code61205')"> 代码如下:
<div class="codebody" id="code61205">
<?php
require_once "Pain.php";
$pain=new Pain();
$songyu="songyu nb";
$zhangyuan="zhangyuan sb";
$pain->assign("songyu",$songyu);
$pain->assign("zhangyuan",$zhangyuan);
$pain->display("new_file.html");
?>

new_file.html
<div class="codetitle"><a style="CURSOR: pointer" data="39178" class="copybut" id="copybut39178" onclick="doCopy('code39178')"> 代码如下:
<div class="codebody" id="code39178">
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"&gt;
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">


new_file


{@$songyu@}

{@$zhangyuan@}


模板引擎

相关文章

文章浏览阅读8.4k次,点赞8次,收藏7次。SourceCodester Onl...
文章浏览阅读3.4k次,点赞46次,收藏51次。本文为大家介绍在...
文章浏览阅读1.1k次。- php是最优秀, 最原生的模板语言, 替代...
文章浏览阅读1.1k次,点赞18次,收藏15次。整理K8s网络相关笔...
文章浏览阅读1.2k次,点赞22次,收藏19次。此网络模型提供了...
文章浏览阅读1.1k次,点赞14次,收藏19次。当我们谈论网络安...