PHP包含-include和require语句

在PHP中,可在服务器执行PHP文件之前在该文件中插入一个文件的内容。include和require语句用于在执行流中插入写在其他文件中的有用代码。include和require除了处理错误的方式不同之外,在其他方面是相同的:

1.require生成一个致命错误(E_COMPILE_ERROR),在错误发生后脚本会停止执行。

2.include生成一个警告(E_WARNING),在错误发生后脚本会继续执行。

因此,若希望继续执行,并向用户输出结果,即使包含文件已丢失,可使用include;否则,在框架,CMS或复杂的php应用程序编程中,要始终使用require向执行流引用关键文件,这有助于在某个关键文件意外丢失情况下,提高应用程序的完整性和安全性。

语法:

include 'filename'; 或 require 'filename';

实例#1:

假设要一个名为"footer.php"的页头文件,如下:

<?php
date_default_timezone_set('UTC');
echo "<p>Copyright © 2006-" . date("Y") . " W3School.com.cn</p>";
?>

一个引用文件php_include.php:

<html>
<head>
<meta charset="utf-8">
</head>
<body>

<h1>欢迎访问我们的首页!</h1>
<p>一段文本。</p>
<p>一段文本。</p>
<?php include 'footer.php'; ?>

</body>
</html>

结果如下:


#实例2:假设在所有页面中引用一个标准菜单文件:

menu.php:

<?php
echo '<a href="/index.asp">首页</a> -
<a href="/html/index.asp">HTML 教程</a> -
<a href="/css/index.asp">CSS 教程</a> -
<a href="/js/index.asp">JavaScript 教程</a> -
<a href="/php/index.asp">PHP 教程</a>';
?>

网站中所有页面引用该菜单文件,具体做法是使用一个<div>元素,这样今后就可通过CSS设置样式,比如在menu_include.php中做法如下:

<html>
<head>
<meta charset="utf-8">
</head>
<body>

<div class="menu">
<?php include 'menu.php';?>
</div>

<h1>欢迎访问我的首页!</h1>
<p>Some text.</p>
<p>Some more text.</p>

</body>
</html>

如下:


#实例3:假设一个定义了一些变量的文件cars.php:

<?php
$color='银色的';
$car='奔驰轿车';
?>

引用该cars.php文件,就可在cars_include.php中调用文件中的变量:

<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1>欢迎访问我的首页!</h1>
<?php 
include 'cars.php';
echo "我有一辆$color$car";
?>
</body>
</html>

如下:



下面验证一下include和require的最大区别:

php_include_verify.php:

<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1>欢迎访问我的首页!</h1>
<?php
ini_set("error_reporting","E_ALL & ~E_NOTICE");
include 'noFileExists.php';
include 'cars.php';
echo "我有一辆$color$car";
?>
</body>
</html>

去除警告函数:ini_set("error_reporting","E_ALL & ~E_NOTICE");

结果可知仍可继续运行:


php_require_verify.php:

<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1>欢迎访问我的首页!</h1>
<?php
ini_set("error_reporting","E_ALL & ~E_NOTICE");
require 'noFileExists.php';
include 'cars.php';
echo "我有一辆$color$car";
?>
</body>
</html>

结果可知无法继续运行require后面的语句:



参考网址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值