我应该将我的html直接放在php上还是从文件中读取它

时间:2014-08-24 18:35:06

标签: php basic-authentication

我对php很新,对最佳做法有疑问。我想知道,当从php返回html时,我应该将html直接包含在php文件中,在echo语句中或从外部文件加载它。如果我从外部文件加载它,每次用户加载页面时都会有磁盘操作吗?

我不知道这是否相关,但上下文是身份验证。我想向php文件发送一个基本身份验证请求,该文件将返回一个页面。

3 个答案:

答案 0 :(得分:2)

您可以在同一个脚本页面中混合使用PHP和HTML。虽然PHP解释器在PHP标签中找到代码,但它会将其作为PHP。其他人将直接显示。请参阅以下示例。

<?php
$header = "PHP html Mix";
?>
<h1><?php echo $header; ?></h1>
<p>You can use php and html as mix. no need to echo static elements.</p>

在php文件上复制并过去,然后运行并查看。

  • 首先我们创建php标签并为php变量分配一个字符串。
  • 然后我们只创建几个html标签和文本。
  • <h1>标签之间再次引入了一个用于回显字符串的php标记。

如果您想将整个html放在iffor内,也可能如下所示。

<?php if($display==1){ ?>
<h2>Write whatever html within these start and close php tag.</h2>
<strong>no need to echo this in php</strong>
<?php } ?>

答案 1 :(得分:2)

让服务器在Web请求中访问多个文件可能会增加磁盘活动,但与数据库查询等相比,开销很小并不是一个问题。

看看wordpress ......它可能会在渲染任何输出之前通过20个或更多文件。

我个人认为保留标记模板是一种很好的做法,即使使用与处理逻辑和数据库查询的文件分开的大量<?=$var?>标记进行插值

答案 2 :(得分:1)

将PHP与HTML结合使用的最佳做法是将<?php?>分隔符中的PHP代码与纯(静态)HTML结合使用。例如,请考虑以下示例。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html version="-//W3C//DTD XHTML 1.1//EN"
    xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.w3.org/1999/xhtml 
        http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Example</title>
</head>
<body>
  <p>The current date: <?php echo(date("Y-m-d")); ?>.</p>
</body>
</html>

因此,应尽可能以这种方式使用它,最好添加一个像MVC(模型 - 视图 - 控制器)这样的架构设计模式。