本文整理汇总了PHP中CDOMElement::getElementTemplate方法的典型用法代码示例。如果您正苦于以下问题:PHP CDOMElement::getElementTemplate方法的具体用法?PHP CDOMElement::getElementTemplate怎么用?PHP CDOMElement::getElementTemplate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CDOMElement
的用法示例。
在下文中一共展示了CDOMElement::getElementTemplate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getHtml
public function getHtml()
{
CORELogger::Log('Getting html for ' . get_class($this));
/*
if($this->notEmptyElement()) {
foreach($this->__children as $child) {
$child->getHtml();
}
}
*/
/*
* copiato da CORE_v0.1
*/
// FIXME: sistemare il codice di getHtml() importato da CORE_v0.1
$matches = array();
$pattern = array();
$attribute = array();
$html_element = get_class($this);
$template = CDOMElement::getElementTemplate($html_element);
$search_attributes = '/%([a-z\\-]+)%/';
preg_match_all($search_attributes, $template, $matches);
foreach ($matches[1] as $match => $text) {
// FIXME: avoid skipping newline
$pattern[$match] = "/\\s*%{$text}%\\s*/";
if ($text == 'children' && $this->notEmptyElement()) {
foreach ($this->__children as $child) {
$attribute[$match] .= $child->getHtml();
}
} else {
if ($this->{$text} === NULL) {
$attribute[$match] = "";
} else {
// the whitespace at the beginning of the string is needed
$attribute[$match] = " {$text}=\"{$this->{$text}}\"";
}
}
}
$html = preg_replace($pattern, $attribute, $template);
return $html;
}