怎么用php写导航条
时间 : 2023-03-25 10:39:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

在PHP中,可以使用HTML和CSS来创建并自定义导航条。以下是一个简单的样例代码:

上面的代码创建了一个标准的无序列表,其中包含四个链接,每个链接都代表导航条的一个菜单项。

在CSS中,你可以使用样式来自定义导航条的颜色,字体大小,字体样式等等。以下是一些可以用来自定义导航条样式的CSS代码片段:

nav {
  background-color: #333;
  padding: 10px;
}
ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
li {
  float: left;
}
a {
  display: block;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}
a:hover {
  background-color: #111;
}

上述代码片段中的CSS属性:

- `background-color` 设置背景颜色

- `padding` 设置内边距

- `list-style-type` 用来设置列表项的符号

- `margin` 设置外边距

- `overflow` 设定溢出如何处理

- `float` 让列表项浮动

- `display` 设置元素是块级还是内联元素

- `color` 设置字体颜色

- `text-align` 设置文本水平对齐方式

- `padding` 设置内边距

- `text-decoration` 设置文本修饰方式

以上是用HTML和CSS创建和自定义导航条的基础知识,让我们看一下如何在PHP中创建导航条。

假设我们有一个包含以下文件的文件夹:

- index.php

- about.php

- products.php

- contact.php

我们可以使用以下代码片段在PHP中创建导航条:

```php

<nav>

<ul>

<li><a href="index.php">首页</a></li>

<li><a href="about.php">关于我们</a></li>

<li><a href="products.php">产品</a></li>

<li><a href="contact.php">联系我们</a></li>

</ul>

</nav>

上述代码中,`href`属性包含每个页面的文件名,将用户从导航菜单项带到页面。

由于导航条通常会在整个网站中保持一致,因此我们可以将此代码段保存为单独的PHP文件,然后在每个需要导航栏的页面上包含该文件。创建`navigation.php`文件并将以下代码复制到该文件中:

```php

<nav>

<ul>

<li><a href="index.php">首页</a></li>

<li><a href="about.php">关于我们</a></li>

<li><a href="products.php">产品</a></li>

<li><a href="contact.php">联系我们</a></li>

</ul>

</nav>

然后,在要包含导航栏的每个页面上使用以下代码,即可将导航条引入到你的页面上:

```php

<?php include 'navigation.php'; ?>

这样,你就可以轻松地在每个页面中使用导航条了。

当然,这只是PHP中创建简单导航条的入门知识点。在实际开发中,导航条通常会更加复杂,并包含更多的菜单项和子菜单项。

在PHP中,我们可以使用一些技术来实现导航菜单。下面简单介绍几种常用的方法:

方法一:使用HTML和CSS实现导航栏

在HTML中书写导航栏的类名,用CSS实现样式,然后使用PHP将导航栏动态输出。

HTML部分:

<nav>

<ul class="menu">

<li><a href="#">首页</a></li>

<li><a href="#">关于我们</a></li>

<li><a href="#">产品中心</a>

<ul>

<li><a href="#">产品 1</a></li>

<li><a href="#">产品 2</a></li>

<li><a href="#">产品 3</a></li>

</ul>

</li>

<li><a href="#">媒体中心</a></li>

<li><a href="#">联系我们</a></li>

</ul>

</nav>

CSS部分:

.menu {

list-style: none;

margin: 0;

padding: 0;

background-color: #f2f2f2;

}

.menu li {

float: left;

}

.menu li a {

display: block;

padding: 8px 12px;

text-decoration: none;

color: #333;

}

.menu li ul {

position: absolute;

display: none;

}

.menu li:hover ul {

display: block;

}

.menu li ul li {

float: none;

}

PHP 部分:

<nav>

<ul class="menu">

<li><a href="#">首页</a></li>

<li><a href="#">关于我们</a></li>

<li><a href="#">产品中心</a>

<ul>

<li><a href="#">产品 1</a></li>

<li><a href="#">产品 2</a></li>

<li><a href="#">产品 3</a></li>

</ul>

</li>

<li><a href="#">媒体中心</a></li>

<li><a href="#">联系我们</a></li>

</ul>

</nav>

方法二:使用数组实现导航栏

在PHP中,我们可以使用数组来存储导航栏的信息,然后使用循环来动态输出。

PHP部分:

<nav>

<ul>

<?php

$navs = array(

array('url' => '#', 'text' => '首页'),

array('url' => '#', 'text' => '关于我们'),

array('url' => '#', 'text' => '产品中心', 'children' => array(

array('url' => '#', 'text' => '产品1'),

array('url' => '#', 'text' => '产品2'),

array('url' => '#', 'text' => '产品3'),

)),

array('url' => '#', 'text' => '媒体中心'),

array('url' => '#', 'text' => '联系我们'),

);

foreach ($navs as $nav) {

echo '<li><a href="' . $nav['url'] . '">' . $nav['text'] . '</a>';

if (!empty($nav['children'])) {

echo '<ul>';

foreach ($nav['children'] as $child) {

echo '<li><a href="' . $child['url'] . '">' . $child['text'] . '</a></li>';

}

echo '</ul>';

}

echo '</li>';

}

?>

</ul>

</nav>

方法三:使用数据库实现导航栏

在PHP中,我们可以使用数据库来存储导航栏信息,然后使用循环来动态输出。

PHP部分:

<nav>

<ul>

<?php

// 连接数据库

$conn = mysqli_connect("localhost", "root", "password", "test");

// 查询导航栏信息

$sql = "SELECT * FROM navs ORDER BY id ASC";

$result = mysqli_query($conn, $sql);

// 循环输出导航栏

while ($row = mysqli_fetch_assoc($result)) {

echo '<li><a href="' . $row['url'] . '">' . $row['text'] . '</a>';

if (!empty($row['children'])) {

$children = explode(',', $row['children']);

echo '<ul>';

foreach ($children as $child) {

$sql2 = "SELECT * FROM navs WHERE id='{$child}'";

$result2 = mysqli_query($conn, $sql2);

while ($row2 = mysqli_fetch_assoc($result2)) {

echo '<li><a href="' . $row2['url'] . '">' . $row2['text'] . '</a></li>';

}

}

echo '</ul>';

}

echo '</li>';

}

// 关闭数据库连接

mysqli_close($conn);

?>

</ul>

</nav>

总结:

以上三种方法均可实现导航菜单,使用HTML和CSS实现的方法较简单,使用数组和数据库实现的方法可以动态生成导航栏。根据自己的需要选择。