PHP起步
欢迎来到PHP的世界!
PHP语言是最受欢迎的Web开发语言之一。它以学习简单、开发快速、性能稳定而倍受Web开发人员的青睐。PHP不仅使用人员众多、数以万计的Web站点用它构建,而且有强大的社区支持,使得无论是用PHP开发Web应用,还是学习PHP语言,都会快速有效、事半功倍。在各种Web开发语言、框架、概念纷扰的今天,PHP仍以其独特魅力吸引更多的Web开发人员学习和使用。
选择PHP,没错的!
1.1 初识PHP
PHP是一种服务器端的、嵌入HTML的脚本语言。它的语法结构和C语言极为相似。为了能够快速地编写动态Web页面,PHP还加入了自己的某些语言特征,这些特征都非常容易理解和使用。先来看一个嵌入有PHP代码的HTML文档
<html>
<head><title>Welcome</title><head>
<body>
<?php
echo "Welcome to PHP's world!";
?>
</body>
</html>
1.2 LAMP——锋利四剑客:Linux、Apache、MySQL和PHP
要想学习PHP,就有必要了解和PHP关系密切的其他3种技术:Linux操作系统、Apache 网络服务器和MySQL数据库。
LAMP这个名词最早由Michael Kunze创造,用来代表Linux操作系统、Apache网络服务器、MySQL数据库和PHP(如果可以,Perl和Python也是不错的选择),LAMP正是这4种技术的首字母。
PHP作为强有力的Web开发语言,和Linux、Apache、MySQL的支持是密不可分的。它们都是开源软
件,并且有强有力的社区支持,它们的完美组合构成了当今Web开发世界中不可忽视的一极重要力量。而且,这支力量近年一直在不断地变得更加强大。虽然,这4种技术并不是专门被设计成在一起工作的,但多年来,这些软件之间的兼容性不断完善,不仅完改善了个组件之间的协作,扩展出更多的功能,而且在目前几乎所有的Linux版本中都默认包含了这些产品,使得这些产品共同组成了一个强大的Web应用平台。
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页面的表现更加丰富、美观,也更加容易维护。
1.3.2 HTML文档
HTML文档就是使用HTML标记语言创建的文档。通过浏览器浏览的网页,几乎都是HTML文档,或者是由服务器端程序生成的HTML文档。下面就是一个HTML文档的代码。<html>
<head><title> HTML文档示例</title></head>
<body>
<h1>HTML语言</h1>
<p>First Web Page</p>
</body>
</html>
1.3.3 使用样式表实现页面效果
按照HTML的设计初衷,文档的内容、结构与格式是分离开来的。如果过多地在HTML 文档中控制页面的显示效果,会使HTML文档的维护越来越难以维护,也违背了HTML的设计初衷。为了解决这个问题,引入了样式表的概念。一个简单的样式表如下所示。
说明:样式表负责控制页面的格式和显示效果,HTML文档负责控制结构和显示内容。p{
font-size:10pt;
}
这个样式表定义的含义是,HTML文档中所有用<p>标签定义的内容,都将使用10pt大小的字体显示。关于样式表语法和如何使用样式表,将在后面做讲述。
1.3.4 客户端的响应
快速学习
Web页面作为客户端,有时需要直接对用户的请求作出响应。这主要是通过客户端脚本来实现,这些脚本语言包括JavaScript等。
可以在HTML页面中加入JavaScript脚本,这些脚本可以直接在浏览器里执行。这样,就可以达到在客户端响应用户请求的需求。一般这样的响应主要是验证表单数据、用户操作提示等。
本书将在1.6节介绍JavaScript。
1.3.5 嵌入式脚本页面
PHP代码一般都是嵌入在HTML文档当中,通过服务器解释这些PHP代码,并用代码执行产生的结果替换PHP代码内容,最后返回给用户的是内嵌代码执行后的HTML文档。例如内嵌生成“Hello World”的HTML页面代码如下:
<html>
<head>
<title>HTML-PHP</title>
</head>
<body>
<h2><?php ehco "Hello World"; ?></h2>
</body>
</html>
1.4 Web编程的基础知识之一:HTML
HTML是创建Web应用的最基本内容,无论是动态还是静态页面,最终都要产生HTML 文档。所有的Web开发都要涉及到用HTML设计Web页面。本节将介绍HTML语言及如何使用HTML创建Web页面。
1.4.1 HTTP协议简介
网络上的计算机之间要进行通信,就必须遵守一定的规则,这种通信规则就是网络协议。协议保证网络上各种不同的计算机之间能够理解彼此传递的消息,好比操不同语言的人们之间,通过翻译来理解对方所说话的含义一样。现在应用最广的Internet使用的是TCP/IP协议,而浏览WWW使用的是HTTP协议,即超文本传输协议(HyperText Transfer Protocol),此协议建立在TCP/IP协议之上。
浏览网页的过程,其实就是一系列请求/响应的过程。HTTP协议定义了这个请求/响应过程中请求和响应的格式,及维护HTTP链接的内容。
1.4.2 HTML基本知识:标签
HTML的全称是HyperText Markup Language,即超文本标记语言。它是一种简单、通用的标记语言。之所以叫标记语言,是因为,HTML通过不同的标签,来标记文档的不同部分。读者看到的每个Web页面,都是由HTML通过一系列定义好的标签生成的。
从简单的文本编辑器,如Windows的记事本,到专业化的编辑工具,如Dreamveaver,都可以用来编辑HTML文档,编辑好的HTML文档必须按后缀.html或.htm来保存,最后,通过浏览器打开HTML文档,来查看页面效果。
在HTML文档中,标签是包含在“<”和“>”之间的部分,如<p>就是一个标签。标签一般是成对使用的,如<b>和</b>同时使用,其中<b>是开始标签,</b>是结束标签。HTML 的标签不区分大小写,因此<B>和<b>表示的含义相同。
1.4.3 HTML基本知识:元素
HTML元素由标签定义,标签所定义的内容就叫“元素”,元素包含在开始标签和结束标签之间。
每一种HTML元素,一般都会有一个或数个属性,属性用来设置或表示元素的一些特性、名称或显示效果等。属性放在元素标签中,紧跟标签名称之后,它和标签名称之间有一个或数个空格。元素的每个属性都有一个值,属性的值的设定使用“属性=”值””的格式,可以为属性的‘值’加上引号或不加引号。下面的HTML代码为标签<form>设置了name属性,其值为login,表示这个表单的名称为login。
<form name=”login”>
1.4.4 HTML基本知识:HTML的基本元素
元素是组成HTML文档的关键,本节介绍HTML常用的几种基本元素。
1.标头元素:HTML使用标签<head>定义一个标头,结束标签是</head>。
2.标题元素:这里的标题,是指HTML文档中,内容的标题。标题元素由标签<h1>到<h6>定义。
3.段落元素:HTML中使用标签<p>和</p>定义一个段落。
4.字形元素:使用标签<b>和</b>定义一个粗体字形元素
5.链接:HTML文档中指向其他Web资源,如另一个HTML页面、图片等的链接被称为“锚”。在HTML
中使用标签<a>和</a>定义一个锚元素,即链接元素,也就是说在<a>和</a>之间的内容,会成为一个超链接。
6.图像元素:使用标签<img>定义一个图片元素,在标签中使用属性src来指向一个图片资源,象这样<img src=”url”>,其中url是指向资源所在位置。这个位置可以是一个URL,也可以是一个相对地址,
7.表格元素:使用标签<table>和</table>定义一个表格元素。一个表格由“行”构成,每一行由数据单元构成。表格的“行”用标签<tr>和</tr>定义,数据单元用标签<td>和</td>定义。
8.列表元素:说明:HTML的列表分为无序列表和有序列表。
9.表单元素:HTML表单是一个包含表单元素的区域,表单元素一般会作为数据,提交给后台服务器做处理。表单域用标签<form>和</form>定义。表单元素是那些定义在表单域里,可以输入信息的元素,如文本框、单选按钮、下拉列表等。
1.4.5 创建HTML文档
使用任何一款文本编辑器,都可以编辑HTML文档。编辑好的HTML文档,按后缀名.html 或htm保存,最后通过浏览器访问HTML文档。打开一个文本编辑器,键入如下HTML代码(代码1-15),
1.4.6 创建HTML列表
HTML最基本的列表有两种:无序列表和有序列表,列表可以嵌套使用,亦可同时使用。创建无序列表,通过设置<ul>标签的type属性,可以更改列表项的标志。type属性的取值可以是disc,square或circle中的任意一个。
创建有序列表,通过设置标签<ol>的type属性,可以为有序列表的列表项设置不同的顺序标志。
对于无序列表来说,
1.4.7 创建页面表格
标签<table>和</table>用来创建一个表格。标签<table>主要的常用属性有width、align 和border。
width属性:设置表格的宽度,如下所示。这里定义一个宽度为600px(600点像素)的表格。
<table width=”600px”>
align属性,设置表格相对于浏览器区域的对其方式,可以选取的值有:left(居左)、center (居中)或right(居右)。
border,设置表格的边框宽度,单位为像素。
1.4.8 建立页面表单
使用标签<form>和</form>创建一个表单。<form>的主要属性是action和method。action属性:用来指定表单数据被提交后,处理这些数据的程序的地址。如下HTML代码,表示当表单提交后,表单的数据将被传到文件login.php,由login.php来处理传入的数据。<form action=”login.php”>
method属性:指定用何种HTTP方式传递数据。
有两种传递数据的方式:POST方式和GET方式。POST方式将表单数据放在HTTP数据的正文部分传递。GET方式将表单数据加到action所指的地址之后传递。
1.5 Web编程的基础知识之二:层叠样式表(CSS)简介
层叠样式表的英文全称是Cascading Style Sheet(简称CSS)。HTML最初设计时,只是用来定义文档的内容。比如标签<table>就是用来定义一个HTML文档的表格。页面的布局由浏览器显示,并不由HTML标签控制。
随着一个站点HTML文件的越来越多,如果用仍HTML标签排版和控制页面显示效果,它的局限性和困难性的问题会日益突出。甚至,在标签无法满足页面显示效果时,有的设计
人员又加入JavaScript来控制页面效果。可以想象,这样HTML文档会变得越发臃肿,并且越来越难以维护。
层叠样式表(CSS)的出现解决了这个问题,即使用CSS决定网页内容如何显示,用CSS 控制页面显示效果。
1.5.1 样式表的基本语法
一个样式(Style)的语法由3部分构成:Selector(选择器),属性(Property),属性值(Value)。
格式如下:
selector {property: value}
例如下面的例子,p就是selector,color就是属性,blue就是属性值。
p {color:blue}
其中p就是指p标签<p>,这个样式(Style)的含义表示凡是用<p>标签标记的文档内容,其文本颜显示为蓝。HTML中所有的标签都可以作为selector。
如果想为Style添加多个属性,可以在两个属性之间用分号分隔。下面的Style就包含两个属性,一个是对齐方式,其值为居中,一个字体颜,其值为红,它们之间用分号分隔开。
p {text-align:center;color:red}
1.5.2 设置页面字体格式
使用CSS可以设置字体的名称、大小、显示风格等样式。
1.字体名称属性:font-family(用这个属性设定字体的名称,如Arial, Tahoma, Courier 等。)
2.字体大小属性:font-size(font-size属性用来设定字体的大小,字体大小的单位有多种,常见的是pt和px。)
3.字体风格属性:font-style(这个属性有3个值可选:normal(正常显示)、italic(斜体显示)、oblique(斜体显示)。normal是缺省值。)
1.5.3 设置页面颜和背景
使用CSS背景颜属性和背景图片属性,可以很方便地设置Web页面的颜和背景。
1.背景颜属性:background-color(此属性为HTML元素设定背景颜,示例代码如下。)
body {background-color:#99FF00;}(上面的代码表示body这个HTML元素的背景颜值是#99FF00。)
2.背景图片属性:background-image(此属性为HTML元素设定背景图片)