PHP目录HTML

PHP目录HTML,php,Php,我有一个php文件,它使用include函数导入文章。本文是一个php文件。我想创建一个table\u of\u contents()函数,我将它放在我想要显示内容列表的文件中(如维基百科文章)。此函数应扫描文章中所有ID以“文章-”开头的标记,并输出这些标题的列表作为链接 例如: 文章 介绍 正文 中间的 正文 结论 正文 会使 <h1>Article</h1> <ul> <li><a href="#article-intro"&

我有一个php文件,它使用
include
函数导入文章。本文是一个php文件。我想创建一个
table\u of\u contents()
函数,我将它放在我想要显示内容列表的文件中(如维基百科文章)。此函数应扫描文章中所有ID以“
文章-
”开头的
标记,并输出这些标题的列表作为链接

例如:

文章
介绍
正文

中间的 正文

结论 正文

会使

<h1>Article</h1>
<ul>
    <li><a href="#article-intro">Introduction</a></li>
    <li><a href="#article-conclusion">Conclusion</a></li>
</ul>
<h2 id="article-intro">Introduction</h2>
<p>text</p>
<h2>Middle</h2>
<p>text</p>
<h2 id="article-conclusion">Conclusion</h2>
<p>text</p>
文章
介绍 正文

中间的 正文

结论 正文

文章
介绍 正文

中间的 正文

结论 正文

$('h2[id^=“article-”])。每个(函数(){ $(“#菜单”)。追加(“
  • ”); });

    我想这会管用的。不要忘了包括最新的jquery。

    还有您尝试了什么?提示:
    preg\u match\u all
    。先试试你自己!您最好使用静态站点生成器或保存网站数据的数据库。你用那种方法是最难的。而且它不会缩放。你的方法有一个很大的缺陷。_内容的函数表_在执行之前需要知道所有的h2,如果在函数调用之后声明h2怎么可能?@sebastian,谢谢。我将尝试类似于
    /]id=“article\-(\w+)”>([\w]+)/
    的方法如何获取页面字符串?您看过了吗?在那里你会找到你的答案。也许你只需要
    (.+)
    ,这也行。我打算提交相同的策略。有一点值得关注,我认为您需要将href中的html()小写,或者只使用href=#“'+$this.id
    <h1>Article</h1>
    <ul>
        <li><a href="#article-intro">Introduction</a></li>
        <li><a href="#article-conclusion">Conclusion</a></li>
    </ul>
    <h2 id="article-intro">Introduction</h2>
    <p>text</p>
    <h2>Middle</h2>
    <p>text</p>
    <h2 id="article-conclusion">Conclusion</h2>
    <p>text</p>
    
    <h1>Article</h1>
    <ul Id="menu">
    
    </ul>
    <h2 id="article-intro">Introduction</h2>
    <p>text</p>
    <h2>Middle</h2>
    <p>text</p>
    <h2 id="article-conclusion">Conclusion</h2>
    <p>text</p>
    
    
    <script>
    $('h2[id^="article-"]').each(function(){
    $('#menu').append('<li><a href="#article-'+$(this).html()+'">'+$(this).html()+'</a></li>');
    });
    </script>