如何在PHP中即时有效地构建HTML

时间:2013-10-30 05:30:06

标签: arrays string

我立即采取了四种方法:

a)简单地回应许多小碎片;
b)通过连接文字和PHP变量创建逻辑上完整的块,然后回显块;
c)从表示带有占位符令牌的逻辑完整块的字符串开始,用PHP变量替换令牌,回显块;
d)创建一个包含块的文字片段的字符串数组,其中散布着命名的占位符元素,然后遍历数组并替换占位符,然后连接数组并回显结果。

(a)听起来直观效率低,但由于系统可能会缓冲它们,因此可能没问题,然后就没有字符串连接或替换操作。但是,代码看起来很糟糕,可能很难维护。

(b)非常混乱,并且由于HTML包含许多引号字符,因此获得正确的语法非常繁琐 - 通常不能只使用带有散布变量的双引号。我还怀疑字符串连接是低效的。

从可维护性的角度来看,(c)是好的,因为你可以清楚地看到预期的HTML,但替换可能也是低效的。

(d)可能非常有效,因为join函数可以很聪明,只需为组合字符串分配一次内存,然后将部分复制到其中。如果起始数组文字很好地布局,它也是合理可维护的。

我相信很多开发人员已经考虑过这个问题,很可能我错过了一些明显的选择 - 这是要走的路?

1 个答案:

答案 0 :(得分:0)

这是a)和b)的混合,取决于你需要什么,但你不应该自己这样做,人们已经做了这样的事情让你免费使用,拿起一个框架。他们需要花一点时间来学习,但是一旦你进入它就会更加快速和可维护。

我要说看看Zend,因为这就是我所知道的(http://en.wikipedia.org/wiki/Zend_framework)。