Php 如何突出显示foreach循环中的当前链接
我有一个脚本,列出所有目录作为链接Php 如何突出显示foreach循环中的当前链接,php,html,if-statement,foreach,Php,Html,If Statement,Foreach,我有一个脚本,列出所有目录作为链接 <?php $dirs = array_filter(glob('../*'), 'is_dir'); ?> <ul style="float:left;"> <?php foreach ($dirs as $nav) { echo "<li><a href='$nav'>".basename($nav)."</a></li>"; } ?> </ul>
<?php
$dirs = array_filter(glob('../*'), 'is_dir');
?>
<ul style="float:left;">
<?php
foreach ($dirs as $nav) {
echo "<li><a href='$nav'>".basename($nav)."</a></li>";
}
?>
</ul>
我想突出显示当前目录,或者给当前链接一个类或id。我知道我需要if语句来完成这一任务,比如if(currentLink=thisLink){//add span class}或者{//continue looping}
,但我不完全确定如何做到这一点
实现此功能的正确方法是什么?要找到您需要的当前目录名,请执行以下操作:
basename(getcwd())
在foreach循环中,使用以下命令:
if(basename($nav) == basename(getcwd()))
{
// add span class
}
要查找您需要的当前目录名,请执行以下操作:
basename(getcwd())
在foreach循环中,使用以下命令:
if(basename($nav) == basename(getcwd()))
{
// add span class
}
是的,如果循环中存在条件,则您是正确的。 在循环之前将当前链接保存在变量中
<?php
$dirs = array_filter(glob('../*'), 'is_dir');
?>
<ul style="float:left;">
<?php
$currentlink='abc';
foreach ($dirs as $nav) {
if($nav==$currentlink)
$class='current';
else
$class='';
echo "<li><a class='$class' href='$nav'>".basename($nav)."</a></li>";
}
是的,如果循环中存在条件,则您是正确的。
在循环之前将当前链接保存在变量中
<?php
$dirs = array_filter(glob('../*'), 'is_dir');
?>
<ul style="float:left;">
<?php
$currentlink='abc';
foreach ($dirs as $nav) {
if($nav==$currentlink)
$class='current';
else
$class='';
echo "<li><a class='$class' href='$nav'>".basename($nav)."</a></li>";
}
在不知道compair的变量的情况下,从语法角度来看,您希望执行以下操作
<?php
foreach ($dirs as $nav){
$class = '';
if( $currentLink == $thisLink ) {
$class = 'class="highlight"';
}
echo '<li><a href="'.$nav.'" '.$class.' >'.basename($nav).'</a></li>';
}
?>
您可以在$\u SERVER
中查找以获取浏览器中的当前url,并使用其中的一些url和basename来填充这些变量
在不知道compair的变量的情况下,从语法角度看,您希望执行以下操作
<?php
foreach ($dirs as $nav){
$class = '';
if( $currentLink == $thisLink ) {
$class = 'class="highlight"';
}
echo '<li><a href="'.$nav.'" '.$class.' >'.basename($nav).'</a></li>';
}
?>
您可以在$\u SERVER
中查找以获取浏览器中的当前url,并使用其中的一些url和basename来填充这些变量
首先,您必须获取当前链接。存储为$current\u链接
<?php
$dirs = array_filter(glob('../*'), 'is_dir');
$current_dir = 'store current directory here';
?>
<ul style="float:left;">
<?php
foreach ($dirs as $nav) {
if($nav == $current_dir) {
$class_name = 'active';
}
else {
$class = '';
}
echo "<li class='$class'><a href='$nav'>".basename($nav)."</a></li>";
}
?>
</ul>
首先,你必须得到当前的链接。存储为$current\u链接
<?php
$dirs = array_filter(glob('../*'), 'is_dir');
$current_dir = 'store current directory here';
?>
<ul style="float:left;">
<?php
foreach ($dirs as $nav) {
if($nav == $current_dir) {
$class_name = 'active';
}
else {
$class = '';
}
echo "<li class='$class'><a href='$nav'>".basename($nav)."</a></li>";
}
?>
</ul>
首先,您需要确定什么是
crrentLink
,什么是thisLink
,即要比较的值。首先,您需要确定什么是crrentLink
,什么是thisLink
,即要比较的值。