对于包含的HTML代码片段文件,哪种命名约定是正确的?

时间:2015-09-07 17:20:01

标签: php html fragment php-include

我有一个index.php文件,它通过PHP包含页面的不同部分。

例如,这包括< head>将HTML页面的一部分放入index.php文件中:

<meta charset="utf-8">
<title>Title of page</title>
<meta name="description" content="Description text...">

...

<link rel="stylesheet" href="stylesheet.css">

...

and so on...

&#34; head.php&#34;的内容可能是这样的:

{{1}}

技术上&#34; head.php&#34;不是PHP文件,因为它不包含任何PHP代码。它也不是有效的HTML文档。它只是一个HTML代码片段。

到目前为止,我总是将这些HTML代码片段文件命名为* .html或* .php。

我的问题是这是否正确?

是否建议给它一个文件扩展名?而不是&#34; head.php&#34;只是&#34;头&#34;?

请记住,可以在服务器的.htaccess文件中设置某些指令,这些指令与* .html和* .php文件的缓存和到期有关。删除文件扩展名并将其重命名为&#34; head.php&#34;到&#34;头&#34;可以将它从.htaccess文件中提到的指令中排除。

在搜索时我在StackOverflow上找到了这个问题: What extension should I use for files containing fragments of HTML

但问题是在6年前被问过的,那里提到了很多不同的文件扩展名,很难说使用哪个。

有人可以就此问题提供最新答案吗?

2 个答案:

答案 0 :(得分:4)

如果您使用include,我强烈建议您使用*.phpinclude执行其中的代码,即使它是原始HTML。 (在这种情况下,它只是输出而没有进一步处理)

因此,对于以这种方式输出的文件,请使用*.php。 (另外,由于某种原因,有一天你在编辑器中使用<?php时也可能会在编辑器中突出显示错误;另外,如果有人直接打开*.html文件,他会看到原始代码然后)

如果您正在使用例如readfile()然后使用*.html突出显示它只是原始HTML代码,不执行任何操作。

这主要取决于你如何包含文件。

P.s。:根本没有扩展。不太可取,通常用于二进制文件和目录。请注意,扩展实际上只是为了让您监督会发生什么。

答案 1 :(得分:2)

我会像php一样离开。你用php包含那个文件。它自己的头文件是没有用的。

如果您为该文件添加一些php,以便进一步开发,该怎么办?添加php扩展不是一个有效的生命周期。

更多importan是存储这些文件的位置。将它们放在模板文件夹下会告诉任何人这些文件是模板。