我有一个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年前被问过的,那里提到了很多不同的文件扩展名,很难说使用哪个。
有人可以就此问题提供最新答案吗?
答案 0 :(得分:4)
如果您使用include
,我强烈建议您使用*.php
。 include
执行其中的代码,即使它是原始HTML。 (在这种情况下,它只是输出而没有进一步处理)
因此,对于以这种方式输出的文件,请使用*.php
。 (另外,由于某种原因,有一天你在编辑器中使用<?php
时也可能会在编辑器中突出显示错误;另外,如果有人直接打开*.html
文件,他会看到原始代码然后)
如果您正在使用例如readfile()
,然后使用*.html
突出显示它只是原始HTML代码,不执行任何操作。
这主要取决于你如何包含文件。
P.s。:根本没有扩展。不太可取,通常用于二进制文件和目录。请注意,扩展实际上只是为了让您监督会发生什么。
答案 1 :(得分:2)
我会像php一样离开。你用php包含那个文件。它自己的头文件是没有用的。
如果您为该文件添加一些php,以便进一步开发,该怎么办?添加php扩展不是一个有效的生命周期。
更多importan是存储这些文件的位置。将它们放在模板文件夹下会告诉任何人这些文件是模板。