Разрушение сайтов PHP - PullRequest
       33

Разрушение сайтов PHP

2 голосов
/ 31 октября 2008

Мне интересно, как я могу разбить мою домашнюю страницу index.php на несколько страниц php (т.е. header.php, footer.php) и создать рабочую страницу index.php, используя эти отдельные страницы php. Я знаю, что WordPress использует это с различными функциями, такими как:

GetHeader();
GetFoodter();

Но когда я пытался использовать эти функции, это ошибки. Я предполагаю, что они не являются родными функциями для PHP.

Что мне нужно сделать, чтобы получить эту функциональность?

Ответы [ 9 ]

9 голосов
/ 31 октября 2008
include 'header.php';

include 'footer.php';
2 голосов
/ 31 октября 2008

Используйте MVC-фреймворк, такой как Zend. Таким образом вы сохраните больше поддерживаемого кода.

1 голос
/ 28 декабря 2008

Кроме того, если я правильно помню, вы также можете использовать

<?php
require('filename');
?>

Разница в том, что если php не может найти файл, который вы хотите включить, он остановится прямо здесь, вместо того, чтобы продолжать выполнять скрипт ...

1 голос
/ 31 октября 2008

Оператор include () включает и оценивает указанный файл.

так что если вы создаете index.php как:

<?php
include("1.php"); include("2.php"); include("3.php");
?>

при обработке он объединит три php-файла (результат их анализа с помощью php) в выходные данные вашего index.php ... проверьте больше на http://pl.php.net/manual/pl/function.include.php

1 голос
/ 31 октября 2008

Вы можете сделать следующее:

<?php
    include('header.php');
    // Template Processing Code
    include('footer.php');
?>
0 голосов
/ 24 августа 2010

Вы также можете посмотреть на движок шаблонов, например Smarty . Таким образом, вы определяете верхний и нижний колонтитулы и все другие общие элементы в одном файле, а затем заполняете остальные с помощью меньших шаблонов или прямого вывода.

0 голосов
/ 30 декабря 2009

Я понимаю, что это старый вопрос, на который уже есть вполне допустимый принятый ответ, но я хотел бы добавить немного больше информации.

Несмотря на то, что include 'file.php'; сам по себе, все же есть преимущества в обертывании такого рода функций в функции, такие как предоставление области действия.

Я немного новичок в PHP, поэтому вчера вечером я впервые поиграл с разбиением файлов на такие файлы, как 'header.php', 'footer.php', 'menu.php'.

Одна проблема, с которой я столкнулся, заключалась в том, что я хотел, чтобы пункт меню для страницы / раздела выделялся по-разному, когда вы были на этой странице или в этом разделе. То есть точно так же «Вопросы» выделены оранжевым цветом на этой странице в StackOverflow. Я мог бы определить переменную на каждой странице, которая будет использоваться во включении, но это сделало переменную своего рода глобальной. Если вы включите включение в функцию, вы можете определить переменные с локальной областью действия для ее обработки.

0 голосов
/ 28 декабря 2008

Если ваш сервер настроен соответствующим образом, вы можете использовать встроенные в PHP настройки автоматического добавления / добавления и установить его в файле .htaccess:

php_value auto_prepend_file "header.php"
php_value auto_append_file "footer.php"

Информация:
www.php.net/manual/en/configuration.changes.php#configuration.changes.apache
www.php.net/ini.core#ini.auto-prepend-file
www.php.net/ini.core#ini.auto-append-file

0 голосов
/ 31 октября 2008

Используйте операторы include, чтобы просто включить эти файлы на свою страницу

Я думаю, что это

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