本文整理匯總了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;
}