Fichiers d'inclusion PHP
L' instruction include
(ou require
) prend tout le texte/code/balisage qui existe dans le fichier spécifié et le copie dans le fichier qui utilise l'instruction include.
L'inclusion de fichiers est très utile lorsque vous souhaitez inclure le même PHP, HTML ou texte sur plusieurs pages d'un site Web.
PHP inclut et requiert des déclarations
Il est possible d'insérer le contenu d'un fichier PHP dans un autre fichier PHP (avant que le serveur ne l'exécute), avec l'instruction include ou require.
Les instructions include et require sont identiques, sauf en cas d'échec :
require
produira une erreur fatale (E_COMPILE_ERROR) et arrêtera le scriptinclude
ne produira qu'un avertissement (E_WARNING) et le script continuera
Donc, si vous voulez que l'exécution se poursuive et montre aux utilisateurs la sortie, même si le fichier inclus est manquant, utilisez l'instruction include. Sinon, dans le cas d'un FrameWork, d'un CMS ou d'un codage d'application PHP complexe, utilisez toujours l'instruction require pour inclure un fichier clé dans le flux d'exécution. Cela aidera à éviter de compromettre la sécurité et l'intégrité de votre application, juste au cas où un fichier clé manquerait accidentellement.
Inclure des fichiers économise beaucoup de travail. Cela signifie que vous pouvez créer un en-tête, un pied de page ou un fichier de menu standard pour toutes vos pages Web. Ensuite, lorsque l'en-tête doit être mis à jour, vous ne pouvez mettre à jour que le fichier d'en-tête inclus.
Syntaxe
include 'filename';
or
require 'filename';
PHP inclut des exemples
Exemple 1
Supposons que nous ayons un fichier de pied de page standard appelé "footer.php", qui ressemble à ceci :
<?php
echo "<p>Copyright © 1999-" . date("Y") . " W3Schools.com</p>";
?>
Pour inclure le fichier de pied de page dans une page, utilisez l' include
instruction :
Exemple
<html>
<body>
<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
<?php include 'footer.php';?>
</body>
</html>
Exemple 2
Supposons que nous ayons un fichier de menu standard appelé "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>';
?>
Toutes les pages du site Web doivent utiliser ce fichier de menu. Voici comment cela peut être fait (nous utilisons un élément <div> pour que le menu puisse facilement être stylisé avec CSS plus tard) :
Exemple
<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>
Exemple 3
Supposons que nous ayons un fichier appelé "vars.php", avec quelques variables définies :
<?php
$color='red';
$car='BMW';
?>
Ensuite, si nous incluons le fichier "vars.php", les variables peuvent être utilisées dans le fichier appelant :
Exemple
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'vars.php';
echo "I have a $color $car.";
?>
</body>
</html>
PHP inclure vs exiger
L' require
instruction est également utilisée pour inclure un fichier dans le code PHP.
Cependant, il y a une grande différence entre inclure et exiger ; lorsqu'un fichier est inclus dans l' include
instruction et que PHP ne le trouve pas, le script continue à s'exécuter :
Exemple
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>
Si nous faisons le même exemple en utilisant l' require
instruction, l'instruction echo ne sera pas exécutée car l'exécution du script meurt après que l'
require
instruction a renvoyé une erreur fatale :
Exemple
<html>
<body>
<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>
</body>
</html>
À utiliser require
lorsque le fichier est requis par l'application.
À utiliser include
lorsque le fichier n'est pas requis et que l'application doit continuer lorsque le fichier n'est pas trouvé.