1.3 PHP Web编程的体系结构和基本内容
概括地说,任何Web编程体系,无外乎服务器端和客户端的程序开发。基于PHP的Web应用开发也不例外,其中客户端的开发包括使用HTML设计Web页面,使用样式表控制Web页面的显示效果,还需要客户端的脚本语言来控制浏览器的特效、验证HTML表单数据等。这些脚本语言包括JavaScript、VBScript等。服务器端的开发则需要掌握PHP语言和MySQL数据库的有关内容。
本节将对这些内容做简要说明,之后的各节,将较为详细地介绍HTML、样式表和JavaScript。它们都是Web开发的基础内容,对这些内容不了解的PHP初学者有必要掌握。
1.3.1 了解PHP、HTML、CSS和JavaScript及其关系
作为服务器端的脚本语言,PHP多数情况下都是和HTML相互搭配来使用的。PHP用来完成和逻辑有关的动态内容。PHP程序执行的输出结果,通过HTML文档表现给用户。一般情况下,在HTML页面中需要输出数据的地方内嵌入PHP代码,这个页面也就成为了PHP程序。
在创建HTML页面时,都要考虑页面设计,如页面布局、页面颜色、字体、边距空白等。这些设置可以单独在页面中进行,但那样会使HTML页面变得臃肿,也不便于将来的维护。层叠样式表解决了这些问题,它允许页面设计人员在层叠样式表(CSS)文件里设置页面表现效果,如字体大小、边距控制等。CSS使得HTML页面的表现更加丰富、美观,也更加容易维护。
有时,在HTML页面中需要对浏览器进行控制,如新建窗口、模拟浏览器的返回按钮等,这就需要在客户端使用JavaScript完成这种效果。在与HTML表单进行交互时,比如验证用户提交的数据,也可以通过JavaScript实现。JavaScript还可以用来处理用户cookie。
简单地说,PHP在服务器端执行,执行结果会通过HTML页面展示给客户端;HTML页面的一些样式需要通过CSS来设置,以便设计更加丰富的Web页面;对HTML表单数据的验证可以通过JavaScript来实现。
1.3.2 HTML文档
HTML文档就是使用HTML标记语言创建的文档。通过浏览器浏览的网页几乎都是HTML文档,或者是由服务器端程序生成的HTML文档。如下就是一个HTML文档的代码。
01 <html> 02 <head><title> HTML 文档示例</title></head> 03 <body> 04 <h1>HTML 语言</h1> 05 <p>First Web Page</p> 06 </body> 07 </html>
【代码解析】每个HTML文档由HTML标签和文档内容构成。也可以这么说,通过HTML标签为一个普通文档加上标记,就构成一个HTML文档。例如上面的文档,实际内容(这里将文档标题除外)如下。
HTML 语言 First Web Page
对“HTML语言”加注标记“<h1>”和“</h1>”,即使之成为一级标题。对“First Web Page”加注标记“<p>”和“</p>”,即使之成为一个段落。
提示 浏览器分析HTML标签后,显示出带有一定格式的文档内容,而HTML标签本身并不会被显示出来。
1.3.3 使用样式表实现页面效果
按照HTML的设计初衷,文档的内容、结构与格式是分离开来的。如果过多地在HTML文档中控制页面的显示效果,会使HTML文档越来越难以维护,也违背了HTML的设计初衷。为了解决这个问题,引入了样式表的概念。一个简单的样式表如下所示。
01 p{ 02 font-size:10pt; 03 }
【代码解析】这个样式表定义的含义是,HTML文档中所有用<p>标签定义的内容都将使用10pt大小的字体显示。关于样式表语法和如何使用样式表,将在后面做讲述。
说明 样式表负责控制页面的格式和显示效果,HTML文档负责控制结构和显示内容。
1.3.4 客户端的响应
Web页面作为客户端,有时需要直接对用户的请求作出响应。这主要通过客户端脚本来实现,而如今最常用的客户端脚本语言非JavaScript莫属。
在HTML页面中可以加入JavaScript脚本,这些脚本可以直接在浏览器里执行。这样,就可以在客户端响应用户请求。一般,这样的响应主要是验证表单数据、用户操作提示等。
JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言,它是Web页面设计的重要组成部分。JavaScript可以出现在HTML文档的任何地方,但必须包含在“<script language="JavaScript">”和“</script>”之间。
1.3.5 嵌入式脚本页面
PHP代码一般都是嵌入在HTML文档中的,通过服务器解释这些PHP代码,并用代码执行产生的结果替换PHP代码内容,最后返回给用户的是内嵌代码执行后的HTML文档。例如内嵌生成“Hello World”的HTML页面代码如下。
01 <html> 02 <head> 03 <title>HTML-PHP</title> 04 </head> 05 <body> 06 <h2><?php ehco "Hello World"; ?></h2> 07 </body> 08 </html>
【代码解析】其中第6行的<?php ehco"Hello World";?>就是内嵌在HTML文档中的PHP代码。当用户浏览该页面时,实际返回的结果如下。
01 <html> 02 <head> 03 <title>HTML-PHP</title> 04 </head> 05 <body> 06 <h2>Hello World</h2> 07 </body> 08 </html>