【发布时间】:2018-09-30 14:39:09
【问题描述】:
我正在尝试删除动态面包屑中的重复项。
//$url = substr(strstr($_SERVER["REQUEST_URI"], 'admin'), 6);
$url = substr(strstr('/content/modal/admin/content/timeline/timeline', 'admin'), 6);
$parse_url = substr($url, 0, strpos($url, "."));
$array = explode("/", $parse_url);
if($array[0] == 'index') {
echo 'CMP';
} else {
echo '<a href="javascript:;" onclick="initializemodal(\'content/modal/admin/index\')">Staff</a> / ';
$path = [];
foreach($array as $value) {
$path[] = $value;
echo '<a href="javascript:;" onclick="initializemodal(\'content/modal/admin/' . implode('/', $path) . '\')">' . $value . '</a> / ';
}
}
这输出为:
<a href="javascript:;" onclick="initializemodal('content/modal/admin/index')">Staff</a> /
<a href="javascript:;" onclick="initializemodal('content/modal/admin/content')">content</a> /
<a href="javascript:;" onclick="initializemodal('content/modal/admin/content/timeline')">timeline</a> /
<a href="javascript:;" onclick="initializemodal('content/modal/admin/content/timeline/timeline')">timeline</a> /
如您所见,它还列出了第 3 行的目录。第 4 行是文件本身。
我怎样才能让它保留 URL 中的重复项,但跳过链接本身?为了澄清,我怎样才能得到这个输出呢?:
<a href="javascript:;" onclick="initializemodal('content/modal/admin/index')">Staff</a> /
<a href="javascript:;" onclick="initializemodal('content/modal/admin/content')">content</a> /
<a href="javascript:;" onclick="initializemodal('content/modal/admin/content/timeline/timeline')">timeline</a> /
【问题讨论】:
-
您可以检查 $array 的下一个索引是否与当前值相同,然后继续跳过此循环
-
@EmtiazZahid 你的意思是
if(current($array) == end($array)) continue;? -
是的,是这样工作的吗?
-
@EmtiazZahid 不幸的是它似乎不起作用
标签: php dynamic foreach breadcrumbs