Php 如何在不更改页面的情况下将html片段加载到页面中

Php 如何在不更改页面的情况下将html片段加载到页面中,php,html,templates,include,Php,Html,Templates,Include,我是PHP新手(3天),我了解使用includes创建高级模板的基本概念。我想进一步利用这个工具来加载更细粒度的内容,但我不确定如何实现这一点。下面的html是一个与php includes组合在一起的页面模板示例。如果您引用此html,假设我在此处包含的页面上有一个小部件:。在最简单的场景中,小部件上方会有一个链接,显示“小部件2”。单击此链接,我希望将WIDGET.php内容替换为widget2.php。如何操作include来加载widget2.php HTML 要更改包含的文件,您需要

我是PHP新手(3天),我了解使用includes创建高级模板的基本概念。我想进一步利用这个工具来加载更细粒度的内容,但我不确定如何实现这一点。下面的html是一个与php includes组合在一起的页面模板示例。如果您引用此html,假设我在此处包含的页面上有一个小部件:
。在最简单的场景中,小部件上方会有一个链接,显示“小部件2”。单击此链接,我希望将
WIDGET.php
内容替换为
widget2.php
。如何操作include来加载
widget2.php

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框架,如ZEnter或SimfOy,或者CAKEPHP来利用一些已经为你设置的路由和模板解决方案。

[...]
<!-- CONTENT -->
<?php include('include/' . $widget . '.php'); ?>
[...]