序号:1210-41
黑龙江省高等教育自学考试
本科毕业论文
题 目 浅谈PHP技术
学员姓名 夏滟
专 业 计算机及应用
准考证号 010311192585
指导教师 马大龙
学 院 地理科学学院
哈 尔 滨 师 范 大 学
2012年10月1日
目 录
摘 要………………………………………………………………………………1
一、PHP技术简介…………………………………………………………………1
二、PHP开发语言的特点…………………………………………………………2
(一)速度快„„„„„„„„„„„„„„„„„„„„„„„„„„2
(二)实用„„„„„„„„„„„„„„„„„„„„„„„„„„„2
(三)功能强大„„„„„„„„„„„„„„„„„„„„„„„„„2
(四)可选择„„„„„„„„„„„„„„„„„„„„„„„„„„2
(五)成本低„„„„„„„„„„„„„„„„„„„„„„„„„„2
(六)版本更新速度快„„„„„„„„„„„„„„„„„„„„„„2
(七)功能全面„„„„„„„„„„„„„„„„„„„„„„„„„2
三、PHP的发展趋势………………………………………………………………3
四、PHP动态网页的工作程序……………………………………………………4
五、数据库MySQL技术…………………………………………………………4
(一)MySQL概述„„„„„„„„„„„„„„„„„„„„„„„„4
(二)MySQL的特点„„„„„„„„„„„„„„„„„„„„„„„4
(三)SQL和MySQL„„„„„„„„„„„„„„„„„„„„„„„4
(四)数据库编程技术„„„„„„„„„„„„„„„„„„„„„„4
六、PHP技术控制MySQL数据库………………………………………………4
(一)建立与MySQL数据库的连接„„„„„„„„„„„„„„„„„4
(二)选择和使用MySQL数据库„„„„„„„„„„„„„„„„„„4
(三)执行SQL指令„„„„„„„„„„„„„„„„„„„„„„„5
七、PHP的优点……………………………………………………………………5
(一)学习过程和方法„„„„„„„„„„„„„„„„„„„„„„5
(二)数据库连接„„„„„„„„„„„„„„„„„„„„„„„„5
(三)可扩展性„„„„„„„„„„„„„„„„„„„„„„„„„5
(四)PHP优点面向对象„„„„„„„„„„„„„„„„„„„„„5
(五)PHP优点可伸缩性„„„„„„„„„„„„„„„„„„„„„5
八、应用实例………………………………………………………………………6 参考文献……………………………………………………………………………8
浅谈PHP技术
夏滟
摘要:PHP 独特的语法混合了C、Java、Perl 以及 PHP 自创的语法。PHP是一种开源的脚本语言,自1994年问世以来,受到互联网和开源运动发展的推动,取得了迅猛的发展(近年来发展速度高达37%,明显高于其他两种通用语言Java和C#;而且PHP的发展反过来又促进互联网和开源的发展。本文主要阐述PHP开发语言的特点,PHP的发展趋势,PHP动态网页的工作程序,数据库MySQL技术概述,以及PHP技术控制MySQL数据库,PHP的优点等问题。
关键词:PHP;特点;MySQL;技术;应用实例
一、PHP语言简介
PHP在发展中演变为超文本预处理器(Hypertext Pre Processor)。PHP是一种自由/开源的脚本语言(也称Web脚本语言),可直接写到超文本标志语言HTML中去。
PHP在服务器端执行(PHP还是一种服务器端技术),表现为程序员可阅读的HTML语言,不需编译过程,人们就可阅读;即其源代码不需进行二进制编译,可直接进入机器为机器所识别(不需派生二进制的机器识别码)。到客户端时,浏览器直接可以识别。 PHP语言基于LAMP(Linux,Apache,MySQL,PHP)开源架构(国内对2010年中国PHP程序员部署PHP应用程序使用的平台作过统计,部署在LAMP平台上的占77%),与之对应的Java语言基于J2EE架构,C#语言基于.net架构。我们注意到在当前的门户网站中也在广泛使用NGINX服务器作为Web服务器,它也像Apache服务器一样主要使用PHP语言开发,形成了LNMP开源架构。PHP是受欢迎的跨平台脚本语言,PHP不但可以在开源平台上运行,也可以在Windows上运行,微软在运行自己的ASP同时,也运行PHP。
PHP自1994年问世以来迄今已被全球3000多万个网站所采用。PHP在全球主要应用于各大网站,如Yahoo!,Google,Lycos,Youtube,Facebook,TWitter等,以及主要的IT跨国公司,如IBM,Oracle,Siemens,Cisco,Intel,Google,Microsoft等。去年6月29~30日在召开“2010开源中国开源世界高峰论坛”之际,微软全球开源互操作和战略合作部总经理Sandeep Gupta在会上作了《开放策略与云计算》的报告,微软在云计算中大量采用PHP技术。
PHP更广泛地应用于互联网网站,有人说“如果要做网站就离不开PHP”,这话虽然有点夸张,但PHP确是全球各大网站优先采用的编程语言;PHP还是一种跨平台语言,不但可以在开源平台上顺利运行,也受到一些知名的闭源平台(如微软)的欢迎;PHP具有简单、易学、易用的特点,其语法与C语言接近,深受专业程序员以及业余爱好者的欢迎(有人还说这是草根阶层的编程语言);中国应用PHP的水平如何?在2005年全球国别(约175个国家和地区)排序中倒数第四,用得很差,据2007年统计,上升了几十位,有很大进步,但也只占中下游的地位,迄今还没有较大改观。对于大学生来说,掌握PHP编程语言,无疑会有利提高其毕业后的就业机遇和就业能力。
PHP在国内应用主要是国内各大网站,如新浪、百度、搜狐、腾讯、阿里巴巴、TOM等,在所统计的中文网站500强中应用PHP技术者有394家约占80%,近年来PHP的应用也扩展到IT中小企业和小网站,并为团购微博采用PHP搭建小型网站。在国内迄今已涌现出数十万个PHP的程序员和爱好者。
PHP具有简单、易学、易用、快速开发、扩展性强、粘合性好(可使各种数据库、各种语言与网页建立联系,粘合在一起),以及互操作性强等特点,取得了广泛应用。
PHP与Perl、Python、Ruby共同特点都是自由/开源脚本语言,以及具有简单(Perl小程序简单,大程序不太实用),易学,易用(Perl不易读),便于快速开发等特点,Perl有庞大的CPAN库支持,Perl、Ruby有强大、灵活的文字处理功能,PHP扩展性强,粘合性好,Ruby语言简单,可移植性高;Perl过去用得较多,Python近来使用多起来了,Ruby最近才推出。PHP使用广泛,是主流应用,但要注意在使用中存在的安全问题。据统计,在2010年企业使用的开发语言中,PHP占78.9%,Perl/Python/Ruby占7.9%(作为统计对照,C/C++占22.4%)。
国内PHP程序员使用Linux操作系统的比例高达77.3%,使用主流的开源数据库MySQL的比例高达96.8%,他们关注的主流应用为社交网络服务(SNS),其次是内容管理系统(CMS)和电子商务(如网店ECShop,网上商店ShopNC,在ShopNC上更建设了PHP多用户电子商城系统)。
在国内PHP编程队伍中从业者占97.3%,业余爱好者占2.7%,集中在大专/大学学历段(占85%),在IT与通信行业中人数最多,占80%以上。
开源社区是PHP发力的基地,在国内已建开源社区约200多个,但具有开发实力(包括采用PHP)的社区还不多,需要继续依靠自身奋斗、社会支持、政府扶植三管齐下努力;PHP Cbina等社区过去肩负PHP的培训任务,做得很出色,要继续坚持下去,要在全国范围内多点建设并扩大培训体系;国外一些IT企业在自己编制的工程技术队伍中,建立开源开发组织(如LTC、OTC等)或组织开源志愿者开发团队,为开源社区无偿作贡献,这种经验值得国内企业学习和仿效;要鼓励各企业、网站、学校、社区和个人特别是OSSfirms,担负起培训、应用、推广、普及PHP技术、Zend产品与服务的重任。
二、 PHP开发语言的特点
PHP是来源于网络、用于网络、发展于网络的一门语言,它一出现就被打上了自由发展的烙印。目前在国内外有数以千计的个人和组织的网站在以各种形式和各种语言学习、发展和完善它,并不断地公布最新的应用和研究成果。PHP能运行在包括Windows、Linux等在内的绝大多数操作系统环境中,常与免费web服务器软件Apache和免费数据库MySQL配合使用于Linux平台上,具有最高的应用价值,这3种技术的结合号称“黄金组合”。下面,我们总结并详细介绍PHP开发语言的几大特点:
(一)速度快:
PHP是一种强大的CGI脚本语言,语法混合了C、JAVA、Perl和PHP式的新语法,执行网页速度比CGI、Perl和ASP更快,这是它的第一个突出的特点。
(二)实用:
由于PHP是一种面向对象的、完全跨平台的新型Web开发语言,所以无论从开发者角度考虑还是从经济角度考虑都是非常实用的。PHP语法结构简单,易于入门,很多功能只需一个函数就可以实现,并且很多机构都相继推出了用于开发PHP的IDE工具。
(三)功能强大:
PHP在web项目开发过程中具有极强大的功能,而且实现相对简单,主要表现在如下几点。
1.可操纵多种主流与非主流的数据库,例如:
MySQL·Aeeess·SQLServer·ora-cle、DBZ等,PHP与MysQL是现在约佳的组合,可以跨平台运行。
PHP文件的后缀为.PHP,ASP文件的后缀则为.asp。动态见面可以根据不同的时间、不同的浏览者而显示不同的数据信息。例如,常见的讨人论坛、留言簿、搜索引擎都是应用动态网页实现的。
五、数据库MySQL技术概述
学习编程语言,至少要掌握一种数据库,学习PHP语言,则非常有必要掌握MySQL。虽然现在PHP对数 据 库 的 支 持 越 来 越 多,如Aceess、SQLserver、Oracle、DBZ等,但在AMP (Apache+MySQL+PHP)的开发模式中,MySQL仍然牢牢的占据一席之地。作为一款优秀的开源软件,MySQL的功能不比那些价格昂贵的数据库差。在重要的安全问题上,从Linux系统上移植过来的 MySQL更具备了别的数据库所无法比拟的优势。使用上越来越人性化,有多款图形界面的支持,操作越来越简单。在中小型企业网、门户网的应用中占据了相当大的优势,甚至在大型项目的开发中,MySQL也能应对自如。
(一)MysQL概述
之所以一直坚持PHP与MysQL数据库的组合,因为在众多的数据库中,MysQL数据库有着特殊的魅力。MysQL是一个真正的多用户、多线程SQL数据库服务器,是比较流行的关系数据库。相对别的数据库而言,可以用16个来概括MysQL,功能齐全、运行极快、完全免费” 。
(二)MysQL的特点
1.MySQL是一个关系数据库管理系统,把数据存储在表格中,使用标准的结构化查询语言一一一SQL进行访问数据库。
2.MySQL是完全免费的,在网上可以任意下载,并且可以查看到它的源文件,进行必要的修改。
3.MySQL服务器的功能齐全,运行的速度极快,十分可靠,有很好安全。
4.MySQL服务器在客户、服务器或嵌入系统中使用,是一个客户机 \服务器系统,能够支持多线程,支持多个不同的客户程序和管理工具。
(三)SQL和MySQL
在介绍MysQL数据库之前,有必要先理解SQL。SQL(StrueturedQueryLanguage,结构化查询语言)是一种标准,数据库系统的工业标准。大多数的RDBMS开发商的SQL都基于这个标准,虽然在有些地方并不是完全一样的,但这并不妨碍对SQL的学习和使用。
(四)数据库编程技术
PHP提供了丰富的内置函数来对MySQL进行操作,最基本的查询操作只要三步就可以做到,这也是为什么说PHP与MySQL是黄金组合的原因之一。操作灵活、简单、使用易学易懂正是PHP的最大特点。
六、 PHP技术控制MySQL数据库
PHP与MySQL的连接方式,包括建立连接、连接数据库、返回结果集和关闭连接等。
(一)建立与MySQL数据库的连接
PHP连接MySQL数据库的方法很简单,应用MySQL_eonneet()函数即可。函数常用的语法格式如下:
$eonn =MySQL_eonnect ('hostname','user-name','Password'):
(二)选择和使用MySQL数据库
连接数据库成功后,就要选择所要使用的数据库了, 这里使用MySQL_query()函数, 格
式如下:
MySQL-query(“usedb_name”);
Db-name为要使用的数据库的名字。选择数据库还可以使用MysQL-select_db()函数,格式如下:
MySQL-sleeted(“db-name”):
MySQL-query()函数是查询指令的专用函数,所有的SQL语句都通过它执行,并返回结果集。MysQL--select_db()函数是打开数据库的专用函数。两者在使用上没有区别。
(三)执行SQL指令
接下来就要对数据库中的表进行操作了。执行SQL语句的函数为MySQL_query(),语法如下:
$result=MySQL-query(“seleet*fromtb_name”,$eonn);
MySQL-query()函数包含两个参数,第一个是要实行的SQL语句,第二个是返回连接数据库的资源。如果SQL语句是一个查询指令“Se-lect”,成功则返回查询后的结果集,失败则返回False;如果SQL语句是INSERT、DELETE、UP-DATE等操作指令,成功返回是True,失败返回False。
七、PHP的优点
(一)学习过程和方法
PHP的语法类似于C,Perl,ASP或者JSP。对于那些对上述之一的语言较熟悉的人来说,PHP太简单了。相反的,如果你对PHP了解较多,那么你对于其他几种语言的学习都很简单了。你只需要很短的时间内将PHP的核心语言特点全部掌握,你可能已经非常了解HTML,甚至你已经知道怎样用编辑设计软件或者手工来制作好看的Web站点。由于PHP代码能够无障碍的添加进你的站点,在你设计和维护站点的同时,你可以很轻松的加入PHP使得你的站点更加具有动态特性。
(二)数据库连接
PHP可以编译成具有与许多数据库相连接的函数。PHP与MySQL是现在绝佳的组合,如果再加上Apache服务器,就是相当完美的了。你还可以自己编写外围的函数取间接存取数据库。通过这样的途径当你更换使用的数据库时,可以轻松的更改编码以适应这样的变化。PHPLIB就是最常用的可以提供一般事务需要的一系列基库。
(三)可扩展性
就像前面说的那样,PHP已经进入了一个高速发展的时期。对于一个非程序员来说为PHP扩展附加功能可能会比较难,但是对于一个PHP程序员来说并不困难。
(四)PHP优点面向对象
PHP提供了类和对象。基于web的编程工作非常需要面向对象编程能力。
(五)PHP优点可伸缩性
传统上网页的交互作用是通过CGI来实现的。CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。解决方法就是将经常用来编写CGI程序的语言的解释器编译进你的web服务器(比如mod_perl,JSP)。PHP就可以以这种方式安装,虽然很少有人愿意这样以CGI方式安装它。内嵌的PHP可以具有更高的可伸缩性。 文件格式
1.对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>"。这是为了防止多余的空格或者其它字符影响到代码。
例如:
<?php
$foo = 'foo';
2.缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。
例如:
if (1 == $x) {
$indented_code = 1;
if (1 == $new_line) {
$more_indented_code = 1;
}
}
3.变量赋值必须保持相等间距和排列。
例如:
$variable = 'demo';
$var = 'demo2';
4.每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。
5.每行结尾不允许有多余的空格。
八、应用实例
图一:PHP问答系统
图二:新浪网
图三:谷歌网
图四:百度网
参考文献:
[1]何玉洁.数据库管理与编程技术.清华大学出版社,2007.
[2]李岚.办公自动化技术与应用.人民邮电出版社,2010.
[3]PHP:News Achieve.PHP: Hypertext Preprocessor.
2012-08-16
[4]盐城PHP发展现状.盐城PHP培训网2012-09-26
[5]陆首群2011PHP技术大会开幕词2012-05-07
转载出处(Http://Www.360docs.net/doc/info-b498a38cb9d528ea81c779de.html)