Я новичок в PHP (3 дня), и я понимаю, что основная концепция использования включает в себя создание шаблонов высокого уровня. Я бы хотел использовать этот инструмент для загрузки более подробного контента, но я не уверен, как подойти к этому. Ниже приведен html пример шаблона страницы, который вместе с php включает. Если вы ссылаетесь на этот html, скажем, у меня есть виджет на странице, содержащейся здесь: <?php include('include/WIDGET.php');?>
<?php include('include/WIDGET.php');?>
. В простейшем из сценариев будет существовать ссылка над виджетами, которая читает "Виджет 2". При щелчке по этой ссылке я бы хотел, WIDGET.php
содержимое WIDGET.php
было заменено на widget2.php
. Как я могу манипулировать включением для загрузки widget2.php
?
HTML
<!-- File: index.php -->
<html>
<head>
<?php include('include/head.php');?>
<title><?php echo $siteName;?></title>
</head>
<body>
<?php include('include/header.php'); ?>
<!-- CONTENT -->
<?php include('include/WIDGET.php'); ?>
<?php include('include/main-content.php'); ?>
<!-- CONTENT END -->
<?php include('include/footer.php'); ?>
</body>
</html>
Чтобы изменить, какие файлы включены, вам нужно будет указать на странице какой-то параметр, который может условно включать правильный виджет.
Например, включив его в строку запроса URL, например:
http://yoursite/index.php?content=widget2
Затем в вашем файле PHP вы можете получить это значение:
if (isset($_GET['content']) && !empty($_GET['content'])) {
$widget = $_GET['content'];
} else {
$widget = 'widget';
}
И включите его в свой HTML:
[...]
<!-- CONTENT -->
<?php include('include/' . $widget . '.php'); ?>
[...]
Это просто привести пример логики, но я не буду использовать код, как я его представил, поскольку он невероятно небезопасен и не проверяет наличие файлов и т.д.
Я знаю, что вы только начинаете, и это очень важно принять сразу, но вы можете рассмотреть возможность использования фреймворка PHP, такого как Zend или Symfony, или CakePHP, чтобы воспользоваться некоторыми решениями маршрутизации и шаблонов, которые уже были настроенный для вас.