Existe-t-il un moyen de faire écho à l'ensemble du contenu d'un fichier .html dans php?
Par exemple J'ai un fichier sample.html, et je veux faire écho à ce nom de fichier afin que son contenu soit affiché.
Vous devriez utiliser readfile()
:
readfile("/path/to/file");
Cela lira le fichier et l’enverra au navigateur en une seule commande. C'est essentiellement la même chose que:
echo file_get_contents("/path/to/file");
sauf que file_get_contents()
peut provoquer le blocage du script pour les fichiers volumineux, alors que readfile()
ne le fera pas.
Il suffit d'utiliser:
<?php
include("/path/to/file.html");
?>
Cela fera écho aussi. Cela a aussi l’avantage d’exécuter n'importe quel PHP dans le fichier,
Si vous devez faire quelque chose avec le contenu, utilisez file_get_contents (),
par exemple.
<?php
$pagecontents = file_get_contents("/path/to/file.html");
echo str_replace("Banana", "Pineapple", $pagecontents);
?>
Cela n'exécute pas le code dans ce fichier, soyez donc prudent si vous vous attendez à ce que cela fonctionne.
J'utilise habituellement:
include($_SERVER['DOCUMENT_ROOT']."/path/to/file/as/in/url.html");
comme alors je peux déplacer des fichiers sans casser l'inclus.
Si vous voulez vous assurer que le fichier HTML ne contient pas de code PHP et ne sera pas exécuté en tant que PHP, n'utilisez pas include
ou require
. simple faire:
echo file_get_contents("/path/to/file.html");