我有2个文件:file1.php和file2.html。所以在file1.php我有:
...
//some variables like $title and $message
echo '<p><h1>' . $title . '</h1></p>' .
'<p>' . $message . '</p>';
require('file2.html');
...
我想在我的HTML页面的echo
标记中center
。但是,当我在浏览器中打开file2.html时会发生什么:
<p><h1>Title</h1></p><p>Message</p>
<!-- And so the doctype comes AFTER the PHP input. This ruins the whole code -->
<!DOCTYPE html>
<html dir="ltr" lang="en-us">
<head>
<title>Example</title>
<script type="text/javascript" src="/scripts/script.js></script>"
</head>
<body style="background-color: #FBFBFB;">
<p><a href="/" title="Home">Home</a></p>
<p><a href="/contact.html" title="Contact Us">Contact Us</a>.</p>
<p><a href="/forums/" title="Forums">Forums</a></p>
<center>
</center>
</body>
</html>
答案 0 :(得分:0)
在您的中心标记内,您可以像这样回显您的价值:
<center>
<?php if( isset($title) ) echo "<p><h1>" . $title . "</h1></p>"; ?>
<?php if( isset($message) ) echo "<p>" . $message . "</p>"; ?>
</center>
请注意,如果文件扩展名为.html
,则无法使用php。在尝试上述解决方案之前,您需要将文件扩展名更改为.php
。
答案 1 :(得分:0)
首先,我会按如下方式编写PHP:
$var = "<p><h1>{$title}</h1></p>\n
<p>{$message}</p>";
然后命名两个文件.php!
在你的html(现在是php文件)的最顶层你放了这个:
<?php
include("path/to/file");
?>
然后在您的中心标记中写下:
<?php
echo $var;
?>
答案 2 :(得分:0)
在显示“...”之前使用回显标题的代码
你的主页应该有php扩展而不是html。 更改扩展名后,将代码插入到html标记中,如下所示:
<center>
<?php
echo '<p><h1>' . $title . '</h1></p>' .
'<p>' . $message . '</p>';
require('file2.html');
?></center>
答案 3 :(得分:0)
你正在做的是基本的模板。您有一个模板,可以在您的内容周围形成一个shell,并且您希望将内容嵌入到该模板中。
Drk_alien和控制台是有钱的,你的主要问题是你的echo
声明在require
之前,所以输出将遵循该顺序。
一般的解决方案是将模板file2.html
变为容器,方法是将其转换为以下内容:
<!DOCTYPE html>
<html dir="ltr" lang="en-us">
<head>
<title>Example</title>
<script type="text/javascript" src="/scripts/script.js></script>"
</head>
<body style="background-color: #FBFBFB;">
<p><a href="/" title="Home">Home</a></p>
<p><a href="/contact.html" title="Contact Us">Contact Us</a>.</p>
<p><a href="/forums/" title="Forums">Forums</a></p>
<center>
<?php echo $content; ?>
</center>
</body>
</html>
然后,在file1.html
中,您可以简单地拥有:
$content = "<p><h1>{$title}</h1></p>\n
<p>{$message}</p>";
require 'file2.html'
$content
将可用于file2.html
,而file2.html
可以是一般模板,您可以将其重复用于其他网页。
对于.html
和.php
扩展,取决于您的服务器设置,PHP是否可以处理.html
个文件。例如,Apache的默认值是.html
不会。