Как использовать PHP для отображения одной HTML-страницы или другой? - PullRequest
2 голосов
/ 24 января 2010

Я хотел использовать PHP и оператор if, и я хотел сделать

if ($variable){
display html page1
}
else {
display html page2
}

Как мне это сделать?Обратите внимание, что я не хочу перенаправлять пользователя на другую страницу.

- РЕДАКТИРОВАТЬ - У меня не было бы проблем с этим на одном из них, но на другом файле это было бы слишкоммного хлопот, чтобы сделать это.

- РЕДАКТИРОВАТЬ-- Вот кодирование до сих пор:

<?PHP
include 'uc.php';
if ($UCdisplay) {
    include("under_construction.php");
}
else {
    include("index.html");
}
?>

Моя проблема в том, что это было бы действительно сложно и запутанно, если бы яЯ должен создать html-страницу для каждой php-страницы, поэтому мне нужен способ показать полную html-страницу вместо использования include ("index.html")

Ответы [ 5 ]

7 голосов
/ 24 января 2010
if ($variable){
  include("file1.html");
}
else {
  include("file2.html");
}
4 голосов
/ 24 января 2010

с использованием троичного оператора:

 include(($variable ? 'page1' : 'page2').'.html');
4 голосов
/ 24 января 2010

Самый простой способ - разместить HTML в двух отдельных файлах и использовать include () :

if ($variable) {
    include('page1.html');
}
else {
    include('page2.html');
}
2 голосов
/ 25 января 2010

Если вы хотите избежать создания «html-страницы для каждой php-страницы», то вы можете сделать что-то вроде этого с «реальным» содержимым непосредственно внутри страницы PHP.

<?PHP
include 'uc.php';
if ($UCdisplay) {
    include("under_construction.php");
    exit;
}
?>
<html>

<!-- Your real content goes here -->

</html>

Идея такова: если $UCdisplay истинно, то отображается страница, находящаяся в процессе разработки, и выполнение останавливается на exit; - больше ничего не отображается. В противном случае поток программы «проваливается», а остальная часть страницы выводится. У вас будет один PHP-файл для каждой страницы контента.

Вы можете обойти эту проблему, переместив код, проверяющий $UCdisplay, прямо в uc.php; это избавит вас от необходимости писать одно и то же выражение if в верхней части каждого файла. Хитрость заключается в том, чтобы иметь код exit после включения страницы конструктора.

1 голос
/ 17 января 2013

Для тех, кто еще ищет: Смотрите функцию readfile(); в php. Он читает и печатает файл в одной функции.

Определение

int readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )

Читает файл и записывает его в выходной буфер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...