在PHP中包含页眉和页脚的最佳实践是什么?

时间:2018-11-21 14:00:19

标签: php html

每次创建网站时,通常都会创建一个简单的index.php文件来加载请求的页面。

示例:     

include ('header.php');
if(isset($_GET['page']))
{
    $page = $_GET['page'];
    $display = $page.'.php';
}
else
{
     include ('homepage.php');
}
include ('footer.php'); ?>

问题: 如果我想创建一个通常可以访问我的数据库的connection.php文件,它将无法在其他页面上工作,因为我必须在不是索引的每个文件中都重写“ include('connection.php')” .php。

请求: 如何以正确且安全的方式嵌入页眉,页脚,连接等...?因此,我不必将其包含在所有其他文件中吗?

通常如何在每个页面中包含页眉和页脚,以便创建动态网站?

1 个答案:

答案 0 :(得分:0)

有多种解决方法。

  1. 使用模板引擎,例如BladeTwig
  2. 创建自动装带器

Blade将允许您进行布局,如下所示:

<html>
    <head>
        <title>App Name - @yield('title')</title>
        @yield('css')
    </head>
    <body>
        <!-- Include all your files -->
        @php
          include('myfile.php');
        @endphp

        <div class="container">
            @yield('content')
        </div>

        @yield('js')
    </body>
</html>

然后,对于每个其他页面,您可以创建一个扩展布局的刀片文件。

@extends('layout.file')

@section('title', 'Page Title')

@section('content')
    <p>This content will be placed in the container in the layout.</p>
@endsection

您可以自己编写自动装载器,也可以使用预先编写的自动装载器。我不会尝试编写一个,因为我通常会使用预先编写的一个。

This should give you an idea though.