自动生成导航

时间:2015-05-27 10:01:20

标签: php html apache

我有一个接受2个字符串的PHP脚本,我使用mod_rewrite来允许链接到example.com/test/data.html而不是example.com/apage.php?x=example&y=data。然后该页面包含基于字符串的文件。我希望能够动态地在导航列表中标记当前页面。

PHP:

$x = htmlspecialchars($_GET["x"]);
$y = htmlspecialchars($_GET["y"]);

if (is_file('/www/pages/' . $x . '/' . $y . '.php') {
    include '/www/pages/' . $x . '/' . $y . '.php';
} else {
    echo '<h1>I dont know that page</h1>';
}

我想要做的是使用PHP生成一个“X”链接列表,我已经预定义了突出显示的实际请求页面。澄清:我希望输出如下内容:

<ul class="nav">
    <li class="home">Home</li>
    <li>Possible</li> 
    <li class="selected">Values</li>
    <li>of</li>
    <li>X</li>
</ul>

此脚本将位于主要PHP脚本'apage.php'中。

请帮忙吗?

编辑:

这就是我现在所拥有的:

<ul>
<?php
foreach (glob("/www/pages/*", GLOB_ONLYDIR) as $filename) {
    $actualname = end(explode('/',$filename));

    if ($actualname == $x) {
        echo '<li class="selected">' . $actualname . '</li>';
    } else {
        echo "<li>" . $actualname . "</li>";
    }
}
?>
</ul>

并使用CSS我的标题是大写的。这个输出:

<ul>
<li>about</li>
<li>contact</li>
<li>events</li>
<li class="selected">home</li>
<li>info</li>
</ul>

1 个答案:

答案 0 :(得分:0)

使用$possible_values=glob('/www/pages/*/*.php');获取所有可能的值,然后使用explode('/',$possible_value[N])解析文件名。