PHP包含文件

在 PHP 中,您可以在服务器执行 PHP 文件之前在该文件中插入一个文件的内容。

include 和 require 语句用于在执行流中插入写在其他文件中的有用的代码。


include 和 require 除了处理错误的方式不同之外,在其他方面都是相同的:

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

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

因此,如果您希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 

向执行流(从一条语句前进到下一条语句,直至运行到程序的结尾处)引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。


包含文件省去了大量的工作。这意味着您可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,您只需更新这个页头包含文件即可。

语法

 include "filename";

require "filename";


实例

假设有一个名为header.php 的文件 ,如下

<?php
header("Content-type:text/html;charset=utf-8");    //设置编码
$name="PHP中文网";
$php="PHP";

?>

使用 include 包含header.php 文件

<!DOCTYPE html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>PHP中文网</title>
 </head>
 <body>
 
  <?php
 
   include "header.php";
 
  echo "欢迎来到"."$name"."学习"."$php";
  ?>
 
 </body>
 </html>

程序运行结果:

欢迎来到PHP中文网学习PHP


实例

有一个名为 "menu.php" 的标准菜单文件:

<?php
 header("Content-type:text/html;charset=utf-8");    //设置编码
 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>';
 ?>

使用 "require" 包含 "menu.php" 文件

<!DOCTYPE html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>PHP中文网</title>
 </head>
 <body>
 <h1>欢迎来到PHP中文网</h1>
  <?php
 
   require "header.php";
 
  ?>
 
 </body>
 </html>

程序运行结果:

欢迎来到PHP中文网

首页 - HTML 教程 - CSS 教程 - JavaScript 教程 - PHP 教程

  include  VS  require

include 与 require 有一个巨大的差异:如果用 include 语句引用某个文件并且 PHP 无法找到这个文件,脚本会继续执行

 如果我们使用 require 语句完成相同的案例,echo 语句不会继续执行,因为在 require 语句返回严重错误之后脚本就会终止执行

实例

 用include 包含不存在的文件

<!DOCTYPE html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>PHP中文网</title>
 </head>
 <body>
 <h1>欢迎来到PHP中文网</h1>
  <?php
 
   include "noFile.php";
 
   echo "我在学"."$name";
 
  ?>
 
 </body>
 </html>

程序运行结果:

欢迎来到PHP中文网

我在学


用require 包含不存在的文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>PHP中文网</title>
</head>
<body>
<h1>欢迎来到PHP中文网</h1>
<?php
require "noFile.php";
echo "我在学"."$name";
?>
</body>
</html>

程序运行结果:

欢迎来到PHP中文网

注意:在使用 include 和require 包含一个不存在的文件是,可能会出现警告信息,这是你可以设置php.ini 的报错级别 

  1. 打开php.ini 

  2.   Ctel+F搜索 error_reporting 

  3. 找到error_reporting = E_ALL

  4. 将error_reporting = E_ALL替换成error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_WARNING

  5. 重启Apache



继续学习
||
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP中文网</title> </head> <body> <?php echo "欢迎来到www.php.cn学习PHP"; ?> </body> </html>
提交重置代码