0

我有两个页面,两个页面都包含一个 php 包含指向第三页的链接。

目前我有这第三页的两个版本,两个版本都有不同的背景,以适应他们需要在页面上的位置。与其维护两个几乎相同的页面,还是有一个,但可以分辨出两个链接中的哪个链接调用它,并随后显示不同的背景。

我知道一个解决方案将基于原始的两个页面,但由于复杂的原因,它确实必须基于第三个 php 文件。

谢谢

4

2 回答 2

0

您正在寻找的是模板引擎。

模板引擎允许您将应用程序逻辑与网站的呈现分离。因此,您将让您的第三个页面根据您的逻辑来决定它必须呈现哪个模板,并且模板引擎将构建具有所需背景的 HTML 页面。

我个人建议你看看Smarty 模板引擎。它的语法几乎与 PHP 相同,因此学习曲线非常流畅。

这是 PHP 和 Smarty 的伪代码示例

//do something

$pageType = getPageType($args);

//do something more

$smarty = new Smarty();
//if needed, configure smarty here

$smarty->assign('background', $pageType);
//other assignments...

//render the third page template
$smarty->display('third_page.tpl');

这是伪代码third_page.tpl

<html>
...
<style>
    <!-- load background {$background} -->
</style>
<body>
    <!-- third page content -->
</body>
</html>
于 2013-07-01T14:03:18.937 回答
0

在调用页面中,定义一个变量:

$from = 1;
include('third.php');

或者

$from = 2;
include('third.php');

third.php中,测试该变量:

if ($from == 1)
  // do something
else
  // do something else
于 2013-07-01T14:02:11.843 回答