怎么用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实现的方法较简单,使用数组和数据库实现的方法可以动态生成导航栏。根据自己的需要选择。
上一篇
浏览器怎么识别php代码
下一篇
php怎么把对象变成数组
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章