在PHP中存储小部件,HTML片段和容器的最佳方法

时间:2011-12-08 19:37:38

标签: php templates optimization

我有一些XHTML小部件和容器,它们具有静态或大部分静态内容。当我说大多数是静态的时,我的意思是一个小部件,它使用从DB或配置传递给它的一个或多个变量。这些都在多个前端页面中使用。目前,我已将它们存储为返回XHTML字符串的PHP函数,并且这些函数存储在每个页面上“包含”的单个“函数”文件中。在适用的情况下,我要么传递这些函数配置值,要么从内部执行一些DB调用。

还有另一种更好的方法将它们存储在PHP代码中吗?或者我正在做的很标准?

(我没有使用Smarty或其他模板系统,我宁愿不添加另一层抽象。)

2 个答案:

答案 0 :(得分:2)

这是非常标准的,你可以做的大部分是将它们分成每个文件,然后有一个“包含”文件,其中包含每个文件。

这样您只需加载每个脚本/页面所需的内容。

答案 1 :(得分:0)

  

(我没有使用Smarty或其他模板系统,我宁愿不添加另一层抽象。)

我知道这不是你想要的,但这真的是id做的。我不一定会使用带有wone语法的模板引擎,但我会使用php并制作包含结构标记的单独片段模板,然后传递我需要的例子:

function get_partial($path, $args = array())
{
   ob_start();
   include($path);
   return ob_get_clean();
}

function include_partial($path, $args = array())
{
   echo get_partial($path, $args);
}

然后在你的模板中:

<div class="<?php echo $args['classname']?>">
  <h4><?php echo $args['title'] ?></h4>
  <?php echo $args['content'] ?>
</div>