$product_Category = ' Electronics| Computers & Accessories| Monitors ';
<!-- a simple div with some links -->
<div class="breadcrumb-killer flat">
<a href="index.php" class="active">Home</a>
<?php
$cats = explode("|", $product_Category);
for($k = 0; $k < count($cats); $k++) {
for ($l=0; $l <= $k; $l++) {
$folder = permalink($cats[$l])."/" ;
echo $folder;
}
echo '<a href="'.$folder.'">'.$cats[$k].'</a>';
}
?>
</div>我有用分隔符分隔的类别,如- Electronics| Computers & Accessories| Monitor
我正在使用此函数创建干净的urls
function permalink($var)
{
$var = preg_replace('#([\W_]+)#', ' ', $var);
$var = str_replace(' ', '-', $var);
$var = strtolower($var);
$var = rtrim($var, '-');
$var = ltrim($var, '-');
$var = trim($var);
return $var;
}当我输出文件夹时,我得到了这个:
electronics/ electronics/computers-accessories/ electronics/computers-accessories/monitors/虽然urs不是我想要的构造方式。我希望urls是这样的:
<a href="electronics/">Electronics</a>
<a href="electronics/computers-accessories/">Computers & Accessories</a>
<a href="electronics/computers-accessories/monitors/">Monitors</a>这就是我所得到的:
<a href="electronics/">Electronics</a>
<a href="computers-accessories/"> Computers & Accessories</a>
<a href="monitors/"> Monitors</a>发布于 2018-12-13 18:28:32
我刚刚意识到我的错误--内部的for循环是将不同的部分添加在一起,但它并不是添加它们只是替换它们,你需要重置它并使用.=添加每个片段……
$folder = "";
for ($l=0; $l <= $k; $l++) {
$folder .= permalink($cats[$l])."/" ;
// echo $folder;
}https://stackoverflow.com/questions/53759653
复制相似问题