本文整理汇总了PHP中ParserOptions::getNumberHeadings方法的典型用法代码示例。如果您正苦于以下问题:PHP ParserOptions::getNumberHeadings方法的具体用法?PHP ParserOptions::getNumberHeadings怎么用?PHP ParserOptions::getNumberHeadings使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParserOptions
的用法示例。
在下文中一共展示了ParserOptions::getNumberHeadings方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: formatHeadings
//.........这里部分代码省略.........
# manually, so let's not bother worrying about it.
$legacyHeadline = Sanitizer::escapeId($safeHeadline, array('noninitial', 'legacy'));
$safeHeadline = Sanitizer::escapeId($safeHeadline);
if ($legacyHeadline == $safeHeadline) {
# No reason to have both (in fact, we can't)
$legacyHeadline = false;
}
} else {
$legacyHeadline = false;
$safeHeadline = Sanitizer::escapeId($safeHeadline, 'noninitial');
}
# HTML names must be case-insensitively unique (bug 10721).
# This does not apply to Unicode characters per
# http://dev.w3.org/html5/spec/infrastructure.html#case-sensitivity-and-string-comparison
# @todo FIXME: We may be changing them depending on the current locale.
$arrayKey = strtolower($safeHeadline);
if ($legacyHeadline === false) {
$legacyArrayKey = false;
} else {
$legacyArrayKey = strtolower($legacyHeadline);
}
# count how many in assoc. array so we can track dupes in anchors
if (isset($refers[$arrayKey])) {
$refers[$arrayKey]++;
} else {
$refers[$arrayKey] = 1;
}
if (isset($refers[$legacyArrayKey])) {
$refers[$legacyArrayKey]++;
} else {
$refers[$legacyArrayKey] = 1;
}
# Don't number the heading if it is the only one (looks silly)
if (count($matches[3]) > 1 && $this->mOptions->getNumberHeadings()) {
# the two are different if the line contains a link
$headline = Html::element('span', array('class' => 'mw-headline-number'), $numbering) . ' ' . $headline;
}
# Create the anchor for linking from the TOC to the section
$anchor = $safeHeadline;
$legacyAnchor = $legacyHeadline;
if ($refers[$arrayKey] > 1) {
$anchor .= '_' . $refers[$arrayKey];
}
if ($legacyHeadline !== false && $refers[$legacyArrayKey] > 1) {
$legacyAnchor .= '_' . $refers[$legacyArrayKey];
}
if ($enoughToc && (!isset($wgMaxTocLevel) || $toclevel < $wgMaxTocLevel)) {
$toc .= Linker::tocLine($anchor, $tocline, $numbering, $toclevel, $isTemplate ? false : $sectionIndex);
}
# Add the section to the section tree
# Find the DOM node for this header
$noOffset = $isTemplate || $sectionIndex === false;
while ($node && !$noOffset) {
if ($node->getName() === 'h') {
$bits = $node->splitHeading();
if ($bits['i'] == $sectionIndex) {
break;
}
}
$byteOffset += mb_strlen($this->mStripState->unstripBoth($frame->expand($node, PPFrame::RECOVER_ORIG)));
$node = $node->getNextSibling();
}
$tocraw[] = array('toclevel' => $toclevel, 'level' => $level, 'line' => $tocline, 'number' => $numbering, 'index' => ($isTemplate ? 'T-' : '') . $sectionIndex, 'fromtitle' => $titleText, 'byteoffset' => $noOffset ? null : $byteOffset, 'anchor' => $anchor);
# give headline the correct <h#> tag
if ($maybeShowEditLink && $sectionIndex !== false) {
// Output edit section links as markers with styles that can be customized by skins