所以我试图在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;。有什么想法吗?
答案 0 :(得分:2)
PHP 101:+
是数学上的补充。
$_string += "/".$w[$i];
^----
你正在做什么
$_string = $_string + '/foo';
最终基本上是
$_string = 0;
尝试
$_string .= "/".$w[$i];
^----
代替。
答案 1 :(得分:1)
为什么在print_link函数中使用+ =? 如果它是一个字符串使用。=而不是+ =