Есть ли способ повторить все содержимое файла .html в PHP?
Например, у меня есть файл sample.html, и я хочу отобразить это имя файла, чтобы его содержимое отображалось.
Есть ли способ повторить все содержимое файла .html в PHP?
Например, у меня есть файл sample.html, и я хочу отобразить это имя файла, чтобы его содержимое отображалось.
Вы должны использовать readfile()
:
readfile("/path/to/file");
Это прочитает файл и отправит его в браузер одной командой. Это по сути то же самое, что и:
echo file_get_contents("/path/to/file");
за исключением того, что file_get_contents()
может привести к сбою сценария для больших файлов, а readfile()
— нет.
file_exists()
может проверить, существует ли файл или каталог с таким именем, и is_file()
можно использовать для проверки того, что файл существует и является обычным файлом. В вашем случае, вероятно, следует использовать is_file()
.
- person Frxstrem; 03.03.2012
echo readfile()
? Поскольку readfile()
возвращает длину файла (которая, по-видимому, составляет 1191 байт), если вы добавите echo
перед readfile()
, будет напечатана длина после печати файла. Просто удалите echo
и все должно заработать. :)
- person Frxstrem; 03.03.2012
Просто используйте:
<?php
include("/path/to/file.html");
?>
Это тоже отразится. Это также имеет преимущество при выполнении любого PHP в файле.
Если вам нужно что-то сделать с содержимым, используйте file_get_contents(),
Например,
<?php
$pagecontents = file_get_contents("/path/to/file.html");
echo str_replace("Banana", "Pineapple", $pagecontents);
?>
Это не выполняет код в этом файле, поэтому будьте осторожны, если вы ожидаете, что это сработает.
Я обычно использую:
include($_SERVER['DOCUMENT_ROOT']."/path/to/file/as/in/url.html");
так как тогда я могу перемещать файлы, не нарушая включения.
readfile
работает, но include
не работает с изображениями.....header('Content-Type: image/png'); include('test.png');exit;
показывает неработающее изображение.
- person Pacerier; 10.10.2014
Если вы хотите убедиться, что файл HTML не содержит кода PHP и не будет выполняться как PHP, не используйте include
или require
. Просто сделайте:
echo file_get_contents("/path/to/file.html");
Include
следует делать .) илиreadfile()
. - person Vyktor   schedule 03.03.2012