用PHP开发的网站,为什么以.html结尾的文件会特别少?
对于这个问题,我的理解是这样的:
(1)php引擎一般设置是:对以
.php为扩展名的文件才进行解析,而用
.html
作为扩展名,如果没有进行特别的设置,会不作php解析。这样就会导致,即使你编写的是
php
脚本文件,但如果不以
.php
作扩展名,也得不到正确的输出结果。
(2)php文件可以是完全没有php代码,纯html,显示输出一点问题没有。你可以将某个html文件扩展名直接改成
.php
,再访问试试,完全一样。
(3)既然是php
开发的网站,“满眼都是php文件”也是正常。
2.
页面的布局是不是用html实现的,还是能用PHP实现?
一般来说,页面布局是用的html
+
CSS
来实现,但上面说过,PHP可以直接写html语句,所以,用php来实现完全没问题。
但总体来说,基于效率等考虑,完全静态的页面建议还是用.html作扩展名。
html文件是标准的ASCII文件,它看起来象是加入了许多被称为链接签(tag)的特殊字符串的普遍文本文件。从结构上讲,html文件由元素(element)组成,组成html文件的元素有许多种,用于组织文件的内容和指导文件的输出格式。绝大多数元素是“容器”, 即它有起始标记和结尾标记。元素的起始标记叫做起始链接签(start tag),元素结束标记叫做结尾链接签(end tag),在起始链接签和结尾链接签中向的部分是元素体。 每一个元素都有名称和可选择的属性,元素的名称和属性都在起始链接签内标明。 比如体元素(body)<body backgroud="back-ground.gif">
<h2>demo </h2>
This is my first html file. <p>
</body>
第一行是体元素的起始链接签,它标明体元素从此开始。因为所有的链接签都具有相同的结构,所以我们将仔细分析这个链接签的各个部分,以便读者对链接签的写法有一大概了解。
<起始链接签开始
body 元素名称,由于元素和链接签一一对应,所以元素名也叫链接签名。需要注意的是<和body之间不能有空格。元素名称不分大小写。 background属性名。一个元素可以有多个属性,属性及其属性值不分大小写。本属性指明用什么方法来填充背景。
=指明属性值
“background.gif”属性值,表示用background.gif文件来填充背景。
属性名,=,属性值合起来构成一个完整的属性,一个元素可以有多个属性,各个属性用空格分开。
> 起始链接链结束。
第二行和第三行是body元素的元素体,最后一行是body元素的结尾链接签。结尾链接签用</开始,随后是元素名,然后是大于号>。
从上面的例子中,我们可以看出,一个元素的元素体中可以有另外的元素。(上例中第二行的标题元素<h2>…</h2>和第三行的分段元素<p>。实际上,html文件仅由一个html元素组成, 即文件以<html>开始,以</html>结尾,文件其部分都是 html的元素体。html元素的元素体由两大部分,即头元素<head>..</head>和体元素<body>…</body>和一些注释组成。头元素和体元素的元素体又由其它的元素和文本及注释组成。也就是说,一个html文件应具有下面的结构:
<html> html文件开始
<head>文件头开始
文件头
</head> 文件头结束
<body>文件体开始
文件体
</body>文件体结束
</html>html文件结束
需要说明的是,html是一门发展很快的语言,早期的html文件并没有如此严格的结构,因而现在流行的浏览器(如Netscape,Mosaic等)为保持对早期html文件的兼容性,也支持不按上述结构编写的html文件。还需要说明的是,各种浏览器对html元素及其属性的解释也不完全一样,本书中所讲的元素,元素的属性及其输出是以Netscape2.0 浏览器为准的,作者将尽量给出别的浏览器对某一元素的解释。
一般来讲,html的元素有下列三种表示方法:
1)<元素名>文件或超文本</元素名>
2)<元素名 属性名=“属性值…>文本成超文本</
元素名>
3)<元素名>
第三种写法仅用于一些特殊的元素,比如分段元素P,它仅仅通知www浏览器在此处分段,因而不需要界定作用范围, 所以它没有结尾链接签。htlm3.0标准中,也定义了</p>链接签,它用于需要界定作用范围的段落,比如增加对齐方式属性的段落。
html文件中,有些元素只能出现在头元素中,绝大多数元素只能出现在体元素中。在头元素中的元素表示的是该html文件的一般信息,比如文件名称,是否可检索等等。这些元素书写的次序是无关紧要的,它只表明该html有还是没有该属性。与此相反,出现在体元素中的元素是次序敏感的,改变元素在html文件
中的次序会改变该html文件的输出形式。