我创建了一个类来构建页面中的内容。我想用一个尽可能广泛的。我遇到的问题是如何将某些内容封装在(例如)div中,而不需要调用结束标记。
下面是我班的一个部分,它做以下工作:
- __construct->创建"部分(调用->Display()时关闭)。这样可以将每个部分保留在自己的标签中
- AddHeader->在
- AddContent->创建一个div,所有内容都应该保存在其中
- Display->关闭和,并允许对其进行回声处理
我不想一直为每一条内容调用AddContent,但希望通过各种选项添加内容,如"AddGraph"、"AddTable",这些选项将添加到内容部分。除了页眉之外,还可以添加潜在的选项卡,因此在页眉后添加标记不是一个选项。
有什么好的建议和/或来源可以进一步帮助我吗?
<?php
class PageContent {
var $content;
function __construct($class= NULL) {
$this->content = "'n<article". (!empty($class) ? " class='". $class ."'" : "") .">'n";
//$this->content = "'n<div". (!empty($class) ? ' class='"$class'"' : '') .">'n";
}
function AddHeader($naam, $class= NULL){
$this->content .= "<header><h3". (!empty($class) ? " class='". $class ."'" : "") .">". $naam ."</h3></header>'n";
}
function AddContent($class= NULL){
$this->content .= "<div". (!empty($class) ? " class='". $class ."'" : "") .">'n";
}
function Display() {
$this->content .= "<div class='clear'></div>'n";
$this->content .= "</div>'n";
$this->content .= "</article>'n";
return $this->content;
}
}
?>
最后,我使用了@redeggae的建议/备注,并专注于为该解决方案创建模板。
也许可以选择使用/从Nette框架中的Html类中获得灵感。