简单的自制面包屑PHP

时间:2015-07-09 18:58:35

标签: php breadcrumbs

所以我试图在php中制作面包屑脚本,并且我得到了一些奇怪的错误。

这是我的剧本:

function bread_crumb(){

…some code before...

foreach ($words as $key => $value) {
    if ($key < count($words) - 1) {
        print '<a href ="';
        print_link($words,$key);
        print '">'.$value.'</a> / ';
    }
}

这是我的print_link()脚本:

function print_link($w,$max){
$_string = "";
for ($i=0; $i < $max; $i++) { 
    if ($i != $max-1) {
        $_string += "/".$w[$i];
    } else {
        $_string += "/".$w[$i]."/";
    }

    print $_string;
}

return $_string;

}

它以某种方式起作用,但不是很好。我的结果在标签之间很好,但在本节中我得到了一些有趣的结果。

例如此链接http://example.com/products/category/
得到这样的翻译:

<a href ="">Www</a> / <a href ="0">Mondano</a> / <a href ="00">Termékek</a> / <a href ="000">Kategóriák</a> / 

我真的知道链接如何成为&#34; 0&#34;。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

PHP 101:+是数学上的补充。

    $_string += "/".$w[$i];
             ^----
你正在做什么

$_string = $_string + '/foo';

最终基本上是

$_string = 0;

尝试

    $_string .= "/".$w[$i];
             ^----

代替。

答案 1 :(得分:1)

为什么在print_link函数中使用+ =? 如果它是一个字符串使用。=而不是+ =