PHP Include Files
PHP include and require Statements
The include
and
require statements take all the text/code/markup that exists in
a file, and inserts it into
the file that uses the include/require statement.
Including files is very useful for re-using code/text on multiple webpages!
The include and
require statements are identical, except upon failure:
-
includewill produce a warning (E_WARNING) but the script will continue -
requirewill produce a fatal error (E_ERROR) and the script will stop
If you want the execution to go on and show users the output, even if the
include file is missing, use the include statement.
This could be wise for files like headers, footers, or navigation menus.
If you want the execution to stop on failure, use the
require statement. This is wise for configuration files or database
connections.
Including files saves a lot of work. This means that you can create a standard header, footer, or menu file for all your webpages. Then, when the header needs to be updated, you can only update the header include file.
Syntax
include 'filename';
or
require 'filename';
PHP include Examples
Example 1
Assume we have a standard footer file called "footer.php", that looks like this:
<?php
echo "<p>Copyright © 1999-" . date("Y") . " W3Schools.com</p>";
?>
To include the footer file in a page, use the
include statement:
Example
<html>
<body>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
<?php include 'footer.php';?>
</body>
</html>
Run example »
Example 2
Assume we have a standard menu file called "menu.php":
<?php
echo '<a href="/default.asp">Home</a> -
<a href="/html/default.asp">HTML Tutorial</a> -
<a href="/css/default.asp">CSS Tutorial</a> -
<a href="/js/default.asp">JavaScript Tutorial</a> -
<a href="default.asp">PHP Tutorial</a>';
?>
All pages in the Web site should use this menu file. Here is how it can be done (we are using a <div> element so that the menu easily can be styled with CSS later):
Example
<html>
<body>
<div class="menu">
<?php include 'menu.php';?>
</div>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
</body>
</html>
Run example »
Example 3
Assume we have a file called "vars.php", with some variables defined:
<?php
$color='red';
$car='BMW';
?>
Then, if we include the "vars.php" file, the variables can be used in the calling file:
Example
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'vars.php';
echo "I have a $color $car.";
?>
</body>
</html>
Run example »
PHP include vs. require
The require statement is also used to include a file into the PHP code.
However, there is one big difference between include and require; when a
file is included with the
include statement and PHP cannot find it, the script
will continue to execute:
Example
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>
Run example »
If we do the same example using the
require statement, the
echo statement will not be executed because the script execution dies after the
require statement returned a fatal error:
Example
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>
Run example »
Use require when the file is required by the application.
Use include when the file is not required and application should continue when file is not found.