PHP中auto_prepend_file与auto_append_file用法实例分析

如果需要将文件require到所有页面的顶部与底部。

第一种方法:在所有页面的顶部与底部都加入require语句。
例如:

?

require(‘header.php‘);
//页面正文内容部分
require(‘footer.php‘);

但这种方法如果需要修改顶部或底部require的文件路径,则需要修改所有页面文件。而且需要每个页面都加入require语句,比较麻烦。

第二种方法:使用auto_prepend_file与auto_append_file在所有页面的顶部与底部require文件。

php.ini中有两项:

auto_prepend_file 在页面顶部加载文件
auto_append_file  在页面底部加载文件

使用这种方法可以不需要改动任何页面,当需要修改顶部或底部require文件时,只需要修改auto_prepend_file与auto_append_file的值即可。

例如:修改php.ini,修改auto_prepend_file与auto_append_file的值。

?

auto_prepend_file = "/home/fdipzone/header.php"
auto_append_file = "/home/fdipzone/footer.php"

修改后重启服务器,这样所有页面的顶部与底部都会require /home/fdipzone/header.php 与 /home/fdipzone/footer.php

注意:auto_prepend_file 与 auto_append_file 只能require一个php文件,但这个php文件内可以require多个其他的php文件。

如果不需要所有页面都在顶部或底部require文件,可以指定某一个文件夹内的页面文件才调用auto_prepend_file与auto_append_file
在需要顶部或底部加载文件的文件夹中加入.htaccess文件,内容如下:

?

php_value auto_prepend_file "/home/fdipzone/header.php"
php_value auto_append_file "/home/fdipzone/footer.php"

这样在指定.htaccess的文件夹内的页面文件才会加载 /home/fdipzone/header.php 与 /home/fdipzone/footer.php,其他页面文件不受影响。

使用.htaccess设置,比较灵活,不需要重启服务器,也不需要管理员权限,唯一缺点是目录中每个被读取和被解释的文件每次都要进行处理,而不是在启动时处理一次,所以性能会有所降低。

时间: 2024-10-11 16:52:44

PHP中auto_prepend_file与auto_append_file用法实例分析的相关文章

angularjs中ng-repeat-start与ng-repeat-end用法实例

angularjs中ng-repeat-start与ng-repeat-end用法实例 <!DOCTYPE html> <html lang="zh-CN" ng-app="app"> <head> <meta charset="utf-8"> <title>ng-repeat-start 与 ng-repeat-end的用法</title> <link rel=&qu

C#中sizeof的用法实例分析

这篇文章主要介绍了C#中sizeof的用法,包括了常见的用法及注释事项,需要的朋友可以参考下. sizeof是C#中非常重要的方法,本文就以实例形式分析C#中sizeof的用法.分享给大家供大家参考.具体分析如下: 在C#中,sizeof用来计算类型的大小,单位是字节.有这样的一个类: 1 2 3 4 5 6 public class MyUglyClass { public char myChar1; public int myInt; public char myChar2; } 在客户端,

Hadoop中MapReduce多种join实现实例分析

一.概述 对于RDBMS中的join操作大伙一定非常熟悉,写sql的时候要十分注意细节,稍有差池就会耗时巨久造成很大的性能瓶颈,而在Hadoop中使用MapReduce框架进行join的操作时同样耗时,但是由于hadoop的分布式设计理念的特殊性,因此对于这种join操作同样也具备了一定的特殊性.本文主要对MapReduce框架对表之间的join操作的几种实现方式进行详细分析,并且根据我在实际开发过程中遇到的实际例子来进行进一步的说明. 二.实现原理 1.在Reudce端进行连接. 在Reudc

Python shutil模块用法实例分析

本文主要介绍了Python shutil模块用法,结合实例形式分析了Python使用shutil模块操作文件拷贝的相关实现技巧与注意事项,需要的朋友可以参考下: shutil模块 主要作用与拷贝文件用的. 1.shutil.copyfileobj(文件1,文件2):将文件1的数据覆盖copy给文件2. 1 import shutil 2 f1 = open("1.txt",encoding="utf-8") 3 f2 = open("2.txt"

Flask框架工厂函数用法实例分析

在我们开始学习FLask的时候,创建应用的实例是用app=Flask(name)来做的,但是当我们想创建多个不同配置的实例的时候咋办呢,每次都要改是不是很烦,那为了减少麻烦,我们可以采用调用一个create_app函数来返回应用实例的方法,这就是工厂方法的大概意思啦! 文字说的再多也难以帮助理解,看代码示例: 1.最初的写法 ? 1 2 3 4 5 6 7 8 #__init__.py里面创建实例,应用实例对象创建完再引入视图函数的模块,因为这时候视图函数上的@app.route()才有效 fr

java中对于多态的一个实例分析

首先来看这样的一段代码,其中对于类的定义如下: class Parent{ public int myValue=100; public void printValue() { System.out.println("Parent.printValue(),myValue="+myValue); } } class Child extends Parent{ public int myValue=200; public void printValue() { System.out.pr

PHP观察者模式定义与用法实例分析_php技巧 - PHP

文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 本文实例讲述了PHP观察者模式定义与用法.分享给大家供大家参考,具体如下: 我理解的观察者模式就是,当我们触发一个事件的时候,想要把这个操作告诉给我想要告诉的对象,让他们都执行这个操作,就是将他们绑定到这个事件下. 1.定义一个基类(用于添加观察者也就是我想要通知的对象,还有通知观察者) EventGenerator.php <?php abstract class EventGenerator { //存储观察者,

JavaScript中的typeof操作符用法实例

在Web前端开发中,我们经常需要判断变量的数据类型.鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方便信息的操作符. 对一个值使用typeof操作符可能返回下列某个字符串: “undefined”——如果这个值未定义“boolean”——如果这个值是布尔值“string”——如果这个值是字符串“number”——如果这个值是数值“object”——如果这个是对象或null“function”——如果这个值是函数 常用的typeof操

MVC中Html.Listbox的用法实例

要绑定listbox或dropdownlist前提是:必须是SelectItem类,例如: 因为Html.ListBox第二个绑定数据的参数要得类型为SelectList第一种:因为listbox可以自动检索viewdata或viewbag中同名的数据包,例如:在Controller文件中代码:ViewBag.scorelist = list;或ViewData["scorelist "]= list在View页面调用时:直接:<%:Html.ListBox("scor