出乎意料的“未定义的偏移量”

时间:2016-04-23 21:41:28

标签: php

我正在使用常见的导航文件,并尝试使导航菜单动态突出显示当前显示的页面。

我有每个页面的标识符

<?php
$currentPage = 1;
?>

在我的header.php页面中,我有以下内容来查找活动页面。

<?php
$active[$currentPage] = " class=current";                
?>
菜单项的

和以下内容

<li <?php echo $active[1] ?>><a href="index.php">Home</a>
<li <?php echo $active[2] ?>><a href="about.php">About Us</a></li>
<li <?php echo $active[3] ?>><a href="services.php">Services</a></li>
<li <?php echo $active[4] ?>><a href="fleet.php">Our Fleet</a></li>
<li <?php echo $active[5] ?>><a href="contact.php">Contact Us</a></li>

但是我收到错误“UNDEFINED OFFSET:”,然后任何页面的相应页码都没有激活。

1 个答案:

答案 0 :(得分:2)

问题是$ active数组中没有用于非活动页面的项目。在header.php文件中,将代码替换为:

<?php
$active = [1=>'',2=>'',3=>'',4=>'',5=>''];
$active[$currentPage] = " class=current";                
?>

你应该为所有菜单项1,2,3,4,5 ...然后在第二行设置当前页面的类,它将有项目,然后不会给出任何错误