Вместо ваших header.php
и footer.php
файлов, содержащих (что звучит как) raw HTML (или HTML с PHP вложенным), вы, возможно, можете назначить это содержимое переменным и использовать переменные внутри вашего * Страница 1026 * - там, где вы хотите, чтобы контент отображался. Вы можете назвать этот файл template-variables.php
, и тогда вам понадобится только один файл, который вы включите в auto_prepend_file
.
Например:
php_value auto_prepend_file "/root-directory/template-variables.php"
Затем в template-variables.php
:
<?php
// Template variables...
// (NB: Using HEREDOC <<< syntax)
$HEADER= <<<EOF
<header>
<h1>Header goes here</h1>
<p>More content goes here...</p>
</header>
EOF;
$FOOTER= <<<EOF
<footer>
<p>Footer content goes here...</p>
<p>Copyright etc.</p>
</footer>
EOF;
В вашем документе HTML / PHP:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- PHP: Short echo format -->
<?=$HEADER?>
<p>Some more content goes here...</p>
<?=$FOOTER?>
</body>
</html>
Чтобы быть немного более инкапсулированным 1018 *, вы можете использовать ассоциативный массив для хранения переменных вашего шаблона, тогда у вас есть только одна переменная в глобальном пространстве имен. Например:
<?php
// Template variables...
$TEMPLATE_VARIABLES = [];
$TEMPLATE_VARIABLES['HEADER'] = 'Hello world';
:
Затем вы можете легко перебрать все ваши «переменные шаблона» в вашем скрипте, если это необходимо.