0

php で小さなブレッドクラム パスを作成するのを手伝っていただけないでしょうか。

        print $path; // /folder/subfolder/subfolder/etc
    // breadcrumb path
    $crumb = explode("/", $path);
    print "<div class='breadcrumbs'>";
    foreach($crumb as $value) {
        print "<a href='?p=". $value ."'>$value</a> &gt; ";
    }
    print "</div>";

ブレッドクラムは希望どおりに印刷されますが、すべてのブレッドクラムを相対パスにリンクする方法がわかりません。

たとえば、現在の $path が /folder/subfolder/subfolder/etc の場合、最初のリンク (フォルダー) は ?p=folder にリンクし、2 番目のリンク (サブフォルダー) は ?p=subfolder にリンクします。ただし、2 番目のリンクは ?p=folder だけでなく、?p=folder/subfolder である必要があります。

どうすればそれを解決できますか?

4

1 に答える 1

1
$crumb = explode("/", $path);
print "<div class='breadcrumbs'>";
$newpath = '';
foreach($crumb as $value) {
    $newpath .= $value;
    print "<a href='?p=". $newpath ."'>$value</a> &gt; ";
    $newpath .= '/';
}
print "</div>";
于 2010-07-15T04:03:59.077 に答える