导航:首页 > 编程语言 > php起源

php起源

发布时间:2023-01-28 20:29:04

php什么是PEAR

借着引入PEAR,php的程式开发者除了可以大幅缩减撰写程式码的工作与时间外,还可以用很简单的方式得到许多强大的动态网页功能,我将会列举许多的实例,让大家看了后,一定会啪掌叫好,并深深的迷上了PEAR。此外,程式码很容易维护,安全性高也是PEAR另2个很吸引人的优点,PAER程式库宛如模组,可以轻易的抽换与更新,完全不会影响到其他的程式码。

我们是从最基本的观念介绍起,包括PEAR这个专有名词的含意? 在那地方取得PEAR套件(package)? 如何使用PEAR套件等?

从第2章起,我们首先介绍PEAR的起源、历史与特色,让大家对PEAR有个基本的认识。

第3章我们将会介绍PEAR程式库套件的安装与管理方法,这一章是非常重要的,在使用PEAR之前,必需先把这些基本功夫学好,虽然有点复杂,但是学会之后受用无穷,让您的PHP程式开发效率倍增,功能随着递升。

第4章,是由简单的范例介绍如何引用PEAR程式库来开发PHP程序,让我们了解PEAR的一般使用方法,也为程式库的使用建立一个基本的操作流程。

在第五章我们将介绍几个用法简单又功能强大的程式库套件的范例,让大家可以在动态网页上快速建立一些您以前无法想象而又非常酷的功能,让您的程式开发功力立刻提高。例如:

◆ 让网页可以提供天气预报的功能,增加网页的附加价值。

◆ 用很简单的方法在服务器上建立网页的快取(Cache),加快网页的开启速度。

◆ 在动态网页上搜寻某台主机有提供那些PORT号的服务。

◆ 在动态网页上查询某个网域名称(DNS),找出相对应的IP。

◆ 动态产生HTML表格。

◆ 快速建立“客户回函”系统,让网页浏览者可以从网页上寄信给网站管理员。

◆ 让网页可以记录网页浏览者的行为,也就是做Log。

第6章到第13章,我们会很详细地介绍一些很重要,很常用,但较为复杂的程式库套件的使用方法,这几章都是以套件为介绍的主轴,也就是说,一章只介绍一个套件,务求将这几个重要套件中较为重要功能,详细地介绍给大家。

这些套件(packages)包括:资料库连线套件、表单制作套件、身份认证套件、档案上传套件、分页套件等等。

最后,附录A会对PEAR的网站做详细的介绍,当您进入PEAR的世界后,您一定会经常来这个网站寻找资料。知道如何利用网站,对于那些PEAR的PHP开发者而言,是十分重要的。附录B则会对PHP的物件导向程式设计做简单的介绍。

喜欢和适合使用PEAR者分类如下:

◆ php爱好者,那一定要用PEAR,因为它绝对棒极了。

◆ PHP的专业程式设计员。您需要的是程式码的安全性,可重复性,以及良好的工作效率,PEAR绝对是必备的。

◆ PHP的程式玩家,想要开发更有趣的,功能更强的应用程式,却不想被撰写PHP程式的一些烦恼绑缠,PEAR绝对可以满足您的要求。

◆ 自己撰写PHP程式,却不喜欢每次都要从零开始,一字一字地敲打程式码,PEAR可以提高您的工作效率。

◆ 您想要学习功能性强,安全性高的PHP,当学会了PHP的基本语法后,可以试着使用PEAR。

◆ 您需要量身定造的PHP应用程式,换言之,您不喜欢像XOOPS之类的套装应用程式,来试试PEAR吧。

◆ 您需要容易维护的PHP应用程式,不想日后常修改程式码,或因为PHP的改版而将整个程式重新设计。

◆ 您希望您的PHP程式可以物件导向化,方便程式的抽换与模组化。

◆ 您希望您的PHP功力更上一层楼,想要学习更多的PHP相关知识,透过PEAR的使用或观看PEAR的原始码,不失为一个好的学习途径。

PEAR就是专门为有以上这些需求的人所写的.。

使用PEAR就像建一座房子一样。它是让您用预制件的方式,建一栋自己设计兼施工的大房子,但却不需要自己搅拌水泥,自己准备沙土、石头,自己烧磁砖.自己做铝门窗,自己做木工装饰等等...。

PEAR就像是已经针对您的需求所订制好并准备好的预制件,您只需要运用创意将他们组合起来就可以了。

我门在使用PEAR来编写PHP程式时,必需有一个先决条件,就是必需对PHP的相关知识有一定的认识。

若您不知道甚么是PHP,什么是Apache、Mysql,或者您虽然知道,却还不会PHP的基本语法,那么,本文章目前并不适合您。建议您快去买些PHP、Apach、Mysql的入门书籍,详加研读后,才来看本文章。

大家并不一定要是PHP高手,但一定需要具备看懂基本PHP程序码的能力。无论如何,首先对PHP的热爱才是阅读本书最基本的先决条件。

第二章

PHP有许多的规范与语法,我们不做介绍,请大家有空去阅读有关PHP的书籍,我们重点介绍的是PHP发展到4.0版以后。加入了物件导向(Object-Oriented Programming Language)的功能,虽然还无法像了java一样做到完全的物件导向,但比起前版本PHP3.0已经是一大进步,也对PHP的程序开发者提供了更强大与更方便的开发能力。

PHP 5.0版以上的版本,已经转变成为彻底的物件导向化,提供了更多完全物件导向功能。我们所介绍的PEAR程式库对PHP 4.3.0以上的版本是完全的支援。这一点请大家放心。

为了大多数人着想,也考虑到PHP向下的相容性,本书的内容与范例都可以在PHP 4.3.0版以上的环境中执行,因为PEAR完全支援PHP 4.3.0以上的版本,小于PHP 4.3.0版的环境,PEAR大部分也是支援的,只有小部分不支援。

什么是PHP的物件导向? 物件导向的语法在传统的PHP程式中较少看到,但若您了解JAVA这种程式语言的话,您应该可以知道什么足物件导向,我会在附录B有针对物件导向做简单的说明。

另外,我要强调的是:PHP除了基本语法外,内建的函式就有超过上千个,横跨上百种类别,包括文字类函式、数字类函式、资料库类、图形类等等,功能相当强大,令人咤舌。但相对于程式开发者,如何善用这些函式,配合PHP的语法撰写有效又好管理的程式码,将会是一大挑战。

在今天,有PEAR这个由全世界众多顶尖的PHP高手所共同生产的智慧结晶,可以让我们轻松又有效率地撰写程式码,并克服许多撰写上的困难。以武侠界的例子来说,用PEAR撰写PHP就宛如数百位武林高手灌注他们的功力给程式开发者。让程式开发者不用从最基本的练功,扎马步练起,借用他们的功力就可以很轻松的让功力倍增,效率倍增。

说了半天,到底什么是PEAR?下一个单元笔者就来做个介绍。

PEAR这个字单纯就字面上而言意思是“梨子”。

一颗梨子。网站的网址为http://pear.php.net

PEAR网站的logo中可以看到例子。

PEAR的开始是从1999年11月2l日。有一位名叫Stig S.Bakken的先生,这位仁兄发起了一个专案,并号召许多的PHP高手来共同投入,他首先为这个专案建立了一些程式码的基础规则,希望PHP的开发者加入这个专案时所撰写的PHP程式码都需要遵守这些规则。

这个专案名称就是PEAR,其实是PHP Extension and Application Repository的缩写,意即“PHP的延续与应用程式库”,简单的说,PEAR其实是一个PHP的程式库。

Bakken先生建立的程式码基础如下,我只概略说明一下,并不详谈细节的部分:

◆ 如果开发者要提供PHP程式库,程式的结构必须物件化。

◆ 程式的缩排要遵循一定的格式

◆ 程式中类别的命名也要遵循一定的格式

◆ 程式码的注解要有一定的格式

◆ 档案命名要有一定的格式

◆ 程式库撰写完成后要包装成套件,而套件的包装与安装方式,也有一定的格式。

该专案欢迎所有的PHP开发者来共同开发PHP程式库,只要他们愿意遵守上述的程式码基础规则。Bakken先生并组织了一组团队作为这个专案的控制主体,负责审核所有参与专案的开发者所提供的程式库,若通过审核,就将程式库分类并放入网站中供其他开发者下载使用,另外,这个团体也负责维护网站的维护与更新。

有些人可能会很好奇,为什么有人会愿意免费撰写程式库让别人来使用呀? 这就是开放原码世界的精神一互助、共享。试想,若每个开发者针对自己专精的部分开发程式库给其他人使用,同时也享用别的开发者所释出的程式库,是不是可以达到互助的目的,让每一个开发者共享所有的开发者的成果.不必所有的程式码都要自己撰写。

更棒的是,这些程式库是免费开放给全世界的人使用的,不只参与程式库开发的开发者可以享用(这种作法与Java或perl提供函式库的作法是一样的)。

因此,全世界所有的PHP开发者可以省去许多撰写程式码的时间,又因为使用程式库的开发者可以回报程式库的缺失给原开发者,原开发者也因此会不断的修正这些程式库,所以程式码相对安全。另外,程式库开发者也会随着时代演进,加入新的功能到程式库中,让程式库的使用者可以与时俱进。

详细情况可参阅PEAR的网站中所提到关于开发PEAR的目的说明:http://pear.php.net/manual/en/about-pear.php。我建议您有时间慢慢地看吧,继续将本文章看下去,您就会慢慢了解PEAR的神奇之处了。

我在文章的最后有一章附录:PEAR网站的介绍,大家可以先参考一下。

如果您还不太了解我介绍所谓“程式库”的意思,没关系,下一节就会透过实际的例子加以说明。

2-3 所有套件简介

▓ 程式库VS套件

介绍所有套件之前,我们必须厘清两个名词,以免读者混淆了,一个就是“程式库”,另外一个就是“套件”。

假如我是是一个PHP的开发者,发展了一个可以处理所有资料库存取“程式库”,并想将这个程式库加入PEAR分享给全世界使用。当我撰写完理资料库的程式库后,我必须按照PEAR的规定,将程式库压缩成一个“件”档,放在PEAR网站供所有人下载,也由于遵循PEAR的规定来压缩档案,这个套件就可以用PEAR的套件管理指令来安装或管理,这对PEAR使用者而言是相当便利的,关于套件管理指令,我会在下一章做完整的说明经过上述的说明,相信读者应该了解何谓“程式库”、何谓“套件”?其实,简单的说,把程式库包装好就变成了套件。

▓ 套件与分类

PEAR截至目前为止释出的套件已高达三百多个,共分为35大类,而且不断增加中。大家可以想象全世界的顶尖PHP开发者的结合,是一股多大的团结力量。下图是网站中套件的分类:

PEAR因为释出的套件太多了,为了管理上的方便所以依套件的功能将套件做分类,同一类的套件在效果上都有相关性,但提供的功能却不尽相同小接下来,我将所有的分类用表格的方式做一个简单的介绍,让大家多了解一下PEAR套件可以提供哪些功能。

这麼多的分类,每一类都会依功能的不同发展出不同的套件。以第一个认证类为例,若您到网站去看,会发现目前该类中共有8个套件

这8个套件都是与身份认证有相关的套件,如果您想要网页具有身份认证功能,例如,可以让网页浏览者注册、输入帐号密码、判别身份、给予权限等等。就会需要用到这些套件。

我再补充一点:有些套件已发展成熟,开发者会将它称为稳定(stable)版,但若程式库尚在发展中,但也已经可以使用,开发者将它释出,通常会称为测试版(alpha or beta)版。网站也会记录套件的开发者与维护者的姓名,有时候一个套件是由许多人共同开发而成的。

这些套件的讯息都可在PEAR的网站中找到,我在附录〈PEAR网站的介绍〉会介绍如何使用PEAR网站。

2-4 使用PEAR程式库的简单范例

在这一节中,我用l个简单的范例来说明程式库的使用。

假设您想要制作一个网页,并且希望知道网页执行时所耗用的时间,则可以借用PEAR所释出的名为Benchmark的程式库。这个程式库开发出来的目的就是用来计算网页的执行时间。

首先,先将Benchmark程式库套件安装好(安装方法请参考下一章)。接着我们就可以开始撰写网页了,例如:我们建立了一个名为show.php的网页。

基于说明上的方便,我在每一行程式前面加上行号,大家实际上撰写程式时是不用加上行号的。

第1行与第2行的程式码首先引用Benchmark套件中的Timer.php网页,这个网页内含计算纲页执行时间的程式库。include_once可以将某一个外部的网页放到这个纲页来,我称这个动作叫做“引用”, 本例相当于执行了Timer.php与show.php两个网页。

第3行,用new关键字建立一个Benchmark_Timer物件,并将该物件放入名为$timer的变数中。接着使用细$timer物件的start( )方法启动时钟,然后加上我自己的程式码,此例中是一行简单的程式。

接着就是要结束时钟的计时,计算网页执行所花费的时间并将它显示出来。第8行先用$timer物件的stop( )方法来停止时钟,并用第9行$timer物件的timeElapsed( )方法计算时钟从启动到停止中间的时间差,并将计算结果放入$totaltime变数中。

最后用echo函式显示时间差在网页上。

由结果可清楚看到show.php网页从开始执行到执行完毕总共花了0.00013613700866699秒,以后可以借由观察这个数字来判断系统效能,或做为程式码改进的参考。如何,执行时间的计算是不是方便、快速又神奇呢!

如果您需要在其他网页上也可以有计算网页的执行时间的功能,只要用上述方式套用在其他PHP网页上就可以了。

事实上,其他套件的使用方式也跟这个套件的使用方式大同小异.差别只是在每个套件所提供的类别、方法以及使用的参数各有不同而已。

套件虽然好用,但相信读者还是有许多的疑惑? 例如:

1. Benchmark程式库套件是怎么来的?要有哪些前置工作才可以使用它?

2. 我是如何知道使用Benchmark套件的方法?

第1个问题牵涉到如何安装PEAR套件,以及安装后套件的管理、升级、删除等问题,我会在第3章加以介绍。第2个问题,笔者会在第4章针对如何使用套件、如何得到套件的资讯等做一个详细的说明。

2-5 为何要用PEAR

为何要使用PEAR? 我根据自己的心得,归纳出以下几点:

1. 省时省力:许多程式码都被撰写在程式库中,开发者只需引用含程式库的PHP档,就可以拥有程式库所提供的功能,省去自行撰写的时间与精力。

2. 安全:由于这些程式库套件都将原始码公开,使用者若发现bug,可以立即向套件的开发者反映,开发者通常也会立即加以修正,让程式库的错误减到最小。

3. 容易维护:自行撰写的程式码与PEAR程式库的程式码分开,若PEAR套件因为有新功能被开发或修正错误而释出新版本,只需更新套件即可,完全不会动到自行撰写的程式码。

4. 功能强大:PEAR套件所提供的功能非常之多,除了一般常用功能如:资料库的连结、设定档的处理、身份的认证、以及表单的处理。另外,较为进阶的功能,例如像网路邮局、网路管理、动态方式产生图形、RSS、Wiki,或者像phpBB的BBCode解析等等都可简单做到。

5. 让网页的程式开发与版面设计分开:PEAR提供许多样板的程式库,可让程式开发与版面设计分开,方便于程式开发者与网页设计者分工合作。

6. 对学习PHP者是一套绝佳的学习范例:程式库的注解说明十分详细,程式码的撰写,具有一定的规则与格式,而且完全物质化,让开发者容易看懂并学习。有些套件还内附教学文件与范例挡,最重要的是:你不用花半毛钱就可得到,我们应该感谢套件的作者们,他们为我们付出了无私的贡献。

2-6 为什么要建立PEAR社团

是什么原因促使全世界的PHP开发者大团结,共同开发出PEAR这个程式宝库呢? 我就认为有以下几个原因:

1.遭受其他竞争者的强大竞争:这一点第1章已经说明过了。

2.PHP的物质化:从PHP4加入物质导向的功能后,PHP5更是进一步物质化。除了要与ASP.NET、JSP一拼外,就是方便于程式的模组化,让程式库的开发可以进行,有了物质化的功能,程式库才可以与开发者自行撰写的程式码切割。

3.开发者的共同需求:如果每一次开发PHP程式,都要从无到有完全自己来,虽然可以锻鍊程式功力,但却没有效率,也不甚经济。若一些常用的功能可以用程式库的方式来处理,将可以解决许多开发者的困难。基于这种所有开发者都共同拥有的需求,让这些PHP的开发者分工合作,共同发展程式库,帮助自己也帮助别人。

2-7 PHP的竞争者与优缺点

PHP是在1994年发展出来的,经过四次主要的改写,成为我们今天所看到的可以广泛应用且成熟的产品。到2005年四月为止,PHP已经运用于全球超过1900万个网站上,而且这个数字还在持续快速成长中。

PHP与他们的竞争对手相比,他具有以下优势:

高效能:不是我黄婆卖瓜,哈哈。.., 我阅览过许多Asp.NET与Jsp的网页,效能上实在无法与PHP相比。(Asp.NET与Jsp的使用者应该不会看这篇文章吧)。

● 可以与许多不同的资料库系统相连结:其他的竞争者也可以,但没有PHP快。

● 易学易用:PHP的程式码的写法非常直觉,容易学习。

● 支援物件导向:这方面Jsp是强项,但PHP5已经追上来了。

● 低成本:根本不用钱。

● 内建非常多的函式库:记得笔者以前使用Asp,内建的函式库实在少的可怜。

● 开放原始码:安全性会比没有开放的高。

● PEAR程式库:这是最近的强力武器,用来与强敌们一争长短。

● 可携性:无论是各类Unix作业系统,如:Linux,FreeBSD,商业版Unix或Windows作业系统都可以使用PHP。

Asp.NET与Jsp当然也有他们独特的优点? 例如,Jsp夹带JAVA强大的功能,它就可以呈现一些目前PHP无法做到的效果。所以Jsp也吸引了许多的使用者,但笔者对Jsp目前的效能实在还不甚满意,相反地,对PHP的快速度满意的不得了。

使用哪一种程式,就由您自行做明确的抉择,不过,若您选择观看文章,相信我们应该都是同道中人,PHP的爱好者。

总而言之,许多PHP高手共同构筑了一个强大的支援网,若您是PHP的程式开发者,却对这些高手的好意毫不领情,那不是太可惜了吗?

❷ php是编程语言还是标记语言

编程语言。

html才是标记语言。
标记语言只是组织数据,编程语言可以处理数据

❸ php除了mvc还有什么架构

1. Yii

Yii是一个基于组件的高性能的PHP的框架,用于开发大规模Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主体化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎一切功能。而且这个框架的价格也并不太高。事实上,Yii是最有效率的PHP框架之一。

2. CodeIgniter

CodeIgniter是一个应用开发框架——一个为建立PHP网站的人们所设计的工具包。其目标在于快速的开发项目:它提供了丰富的库组以完成常见的任务,以及简单的界面,富有条理性的架构来访问这些库。使用CodeIgniter开发可以往项目中注入更多的创造力,因为它节省了大量编码的时间。

3. CakePHP

CakePHP是一个快速开发PHP的框架,其中使用了一些常见的设计模式如ActiveRecord,Association Data Mapping,Front Controller以及MVC。其主要目标在于提供一个令任意水平的PHP开发人员都能够快速开发web应用的框架,而且这个快速的实现并没有牺牲项目的弹性。

4. PHPDevShell

PHPDevShell是一个开源(GNU/LGPL)的快速应用开发框架,用于开发不含Javascript的纯PHP。它有一个完整的GUI管理员后台界面。其主要目标在于开发插件一类的基于管理的应用,其中速度、安全、稳定性及弹性是最优先考虑的重点。其设计形成了一个简单的学习曲线,PHP开发者无需学习复杂的新术语。PHPDevShell的到来满足了开发者们对于一个轻量级但是功能完善,可以无限制的进行配置的GUI的需求。

5. Akelos

Akelos PHP框架是一个基于MVC设计模式的web应用开发平台。基于良好的使用习惯,使用它可以完成如下任务:

◆方便的使用Ajax编写views

◆通过控制器管理请求(request)及响应(response)

◆管理国际化的应用

◆使用简单的协议与模型及数据库通信

你的Akelos应用可以在大多数共享主机服务供应方上运行,因为Akelos对服务器唯一的要求就是支持PHP。因此,Akelos PHP框架是理想的用于发布单独web应用的框架,因为它不需要非标准PHP配置便能运行。

6. Symfony

Symfony是一个用于开发PHP5项目的web应用框架。

这个框架的目的在于加速web应用的开发以及维护,减少重复的编码工作。

Symfony的系统需求不高,可以被轻易的安装在任意设置上:你只需一个Unix或Windows,搭配一个安装了PHP5的网络服务器即可。它与差不多所有的数据库兼容。Symfony的价位不高,相比主机上的花销要低得多。

对于PHP开发者而言,使用Symfony是一件很自然的事,其学习曲线只有短短一天。干净的设计以及代码可读性将缩短开发时间。开发者可以将敏捷开发的原理(如DRY,KISS或XP等)应用在其中,将重点放在应用逻辑层面上,而不用花费大量时间在编写没完没了的XML配置文件上。

Symfony旨在建立企业级的完善应用程序。也就是说,你拥有整个设置的控制权:从路径结构到外部库,几乎一切都可以自定义。为了符合企业的开发条例,Symfony还绑定了一些额外的工具,以便于项目的测试,调试以及归档。

7. Prado

PRADO团队由一些PRADO狂热者组成,这些成员开发并推动PRADO框架以及相关项目的进行。

PRADO的灵感起源于Apache Tapestry。从04年开始,PRADO成为SourceForge上的开源项目之一。这个项目目前进展到了3.x版本。

8. Zend

作为PHP艺术及精神的延伸,Zend框架的基础在于简单,面向对象的最佳方法,方便企业的许可协议,以及经过反复测试的快速代码库。Zend框架旨在建造更安全,更可靠的Web 2.0应用及web服务,并不断从前沿厂商(如Google,Amazon,Yahoo,Flickr,StrikeIron和ProgrammableWeb等)的API那里吸收精华。

9. ZooP

Zoop PHP框架,意为Zoop面向对象的PHP框架。

这是个稳定,可伸缩并可移植的框架。从诞生到现在的5年间,已经在不少产品开发中被使用。Zoop是一个快速,有效并干净的框架。它的伸缩性很好,你可以只安装你需要的功能。

对代码并不很熟悉的开发者也可以通过Zoop快速的开发安全的web应用。熟练的开发者则可以更加将Zoop的弹性利用到极致。

Zoop建议将display,logic以及数据层(MVC)分开使用。

Zoop由很多组件和项目集合而成,其中包括smarty和prototype AJAX框架,PEAR模块等。高效的核心组件提供了很多你原本需要自己编码来实现的功能。Zoop内置的纠错功能可以通过配置实现生产环境下的错误日志生成,这个错误日志提供了很多信息,可读性很高,可以更轻易的寻找并排除错误。

Zoop的一个特别之处在于其GuiControls,在PHP中是一个相当革新的想法。它提供了很多form widgets与验证完整的集合到一起,并形成了一个可以轻松打造个性化GuiControls的框架。

10. QPHP

QPHP,意为快速PHP,它是一个与ASP.NET类似的MVC框架。基本上它是这样一个情况:

◆整合了Java和C#的美感

◆除去了在其他PHP框架中使用的Perl形式的意义含糊的语言

◆大量基于OOP的概念

❹ php 格式文件 怎么打开急!!!

PHP是编程语言和应用程序服务器的结合。PHP和其它的编程语言类似,使用变量存储临时数值,使用操作符处理变量。PHP的真正价值在于它是一个应用程序服务器。

当谈到应用程序服务器的时候,我是指一个把几个不同的技术组合为一个完整的套件的程序。这些技术包括:
* 一个强壮的编程语言。
* 存取数据库中存储的数据。
* 支持 Internet协议,尤其是电子邮件和HTTP协议。

注意:应用程序服务器有许多其它的特性,这里只列出了最基本的特性。

由于提供了这些多种不同技术的前端接口,PHP可以使工作变的很容易。
本章的其它部分讲述了有关PHP的许多繁杂资料,以及它在应用软件开发中起到的作用。

1.1 起源
PHP是由Rasums Lerdorf创建的,它开始是一个简单的用Perl语言编写的程序,用来记录Rasums Lerdorf自己在线简历的访问者。以后它又被用C语言重新写过,范围扩大到访问数据库。在这期间,有许多人向Rasums Lerdorf要此程序的拷贝,以便自己使用。Rasums Lerdorf为此写了一些介绍此程序的文档,并发布PHP v1.0。以后,越来越多的人开始使用PHP,并强烈要求增加一些其他的特性,如循环语句和数组变量等。到这时,其他的一些程序员也开始参与PHP源码的编写(主要有Zeev Suraki和Andi Gutmans),很明显,此时的PHP为了以后的发展,必须重新编写。因此,PHP v3.0就出现了。
1.2 特性
PHP的特性包括:
* 开放源码 -- 所有的PHP源码都可以得到。事实上,所有的源码都包含在随书附带的光盘中。
* 没有运行费用 -- PHP是免费的。
* 基于服务器端 -- 由于PHP是在Web服务器端运行的,PHP程序可以很大、很复杂而不会降低客户端的运行速度。
* 跨平台 -- 虽然本书是以Linux为重点介绍的,但PHP程序可以运行在UNIX,Linux,或者Windows操作系统下。
* 嵌入HTML -- 因为PHP语言可以嵌入到HTML内部,所以PHP很容易学习。
* 简单的语言 -- 和Java和C++不同,PHP语言坚持以基本语言为基础,然而它的功能也强大到足以支持任何类型的Web站点。
* 效率高 -- 和其它的解释性语言相比,PHP系统消耗较少的系统资源。当PHP作为Apache Web服务器的一部分时,运行代码不需要调外部二进制程序,服务器解释脚本不需要承担任何额外负担。
* 分析XML -- 用户可以组建一个可以读取XML信息的PHP版本。
* 数据库模块 -- 用户可以使用PHP存取Oracle、Sybase、MS SQL、Adabase D、MySQL、mSQL、PostgreSQL、dBase、FilePro、Unix dbm、Informix/Illustra等类型的数据库,以及任何支持ODBC标准的数据库。
* 文件存取--PHP有许多支持文件存取函数。
* 文本处理--PHP有许多函数处理字符串,其中包括模式匹配的能力。
* 复杂的变量--PHP支持标量、数组、关联数组等变量,这给用户提供了以支持其它的高级数据结构的坚实基础。
* 图象处理--用户可以使用PHP动态的创建图象。
* 更多的其它功能!

1.3 PHP需要花费多少钱?
PHP是免费的。所有的源码、文档都可以免费的复制、编译、打印和分发。用户的任何一个用PHP编写的程序都属于用户自己,可以按照自己的意愿进行处理,而不需要付任何版税。就PHP本身而言,用户可以无限制地发布自己编写的程序。
然而,有着很充分的理由,PHP并不是彻底的“公共领域”代码。如果PHP源码是完全的公共领域代码,很可能就有人对PHP的源码做很小的修改,然后编译并出售--换一句话说,从它的创作者中脱离出来。但从另一方面说,如果不公布源码,很难使想使用它的用户感到放心。
GNU通用公共许可是一种发布免费软件的方法,它可以避免其他人占有你的劳动成果。在符合GNU许可的条件下,源码可以自由地发布,并且任何一个人都可以使用,但是任何来源于此代码的程序必须以同样种类的许可方式发布。换句话说,如果用户从任何GNU许可下的源码中得到代码而编写自己的程序,用户必须给任何想得到源码的人共布自己的源码。
1.4 PHP语言可以嵌入HTML中
当使用者使用经典程序设计语言(如C或Pascal)编程时,所有的代码必须编译成一个可执行的文件,然后该可执行文件在运行时,为远程的Web浏览器而产生可显示的HTML标记。但另一方面,PHP并不需要编译(至少不编译成可执行文件)。使用者可以把自己的代码混合到HTML中。例如,下面的代码将显示“Hello,world!”,PHP代码在下面以黑体字显示。

<HTML>
<HEAD><TITLE>Test</TITLE></HEAD>
<BODY>
<?PHP $string = 'world!'; ?>
<H1>Hello,<?php echo $string ?></H1>
</BODY>
</HTML>

PHP应用程序服务器(本书的主要写作目的)是紧密集成到Apache Web服务器中的,可以在一个程序内同时调用它们两个。当Web浏览器请求PHP Web页面的时候,Web服务器的PHP部分将被调用进行解释。Web服务器在请求的Web页中寻找<?PHP . . . ?>标记,并按要求执行这些PHP代码。
由PHP代码生成的输出将替代<?PHP . . . ?>标记。例如,当PHP代码运行后,以前的Web页面将变成如下所示的内容:

<HTML>
<HEAD><TITLE>Test</TITLE></HEAD>
<BODY>
<H1>Hello,world!</H1>
</BODY>
</HTML>

注意,所有的PHP代码都消失了,仅仅留下了HTML语句。而由PHP代码生成的HTML语句在上例中以黑体的形式显示。

1.5 PHP语言是在Web服务器端运行
当开发互联网应用程序时,很重要的一点是要清楚应用程序是在哪一端运行的。PHP总是运行在服务器端。不要嘲笑对这一点的强调。在以后考虑对应用程序某些特性进行规划时,有的人可能就会在应用程序在哪里运行的这个问题上搞错,不要让自己也成为这些人中的一个。
由于Java applets,ActiveX,或javascript 都是运行在客户端的Web浏览器中的,因此PHP不能直接和它们进行比较。然而可以很容易的将这些语言与PHP相结合在一起,使用PHP可以很方便地生成所需要的任何HTML代码,当然也就能激活Java applets和ActiveX控件,还可以动态生成javascript语句。当对互联网应用程序开发还很陌生的时候,这也许没有什么意义,但是在读完这本书后,这一切就会变得十分清晰的了。
1.6 PHP无处不在
无处不在是常使用的充满激情的词语,到1999年7月,将有60万左右的Web站点使用PHP,1999年夏天有关Linux和开放代码运动的大发展很可能使PHP团体有突破性发展。可以在http://www.php.net/usage.php3站点上看到它的发展趋势图表。
此外,PHP邮件列表每天能收到大约80个电子邮件,每个月能收到大约2500个电子邮件,这说明PHP是一个非常活跃的开发团体。使用PHP的商业公司有以下几个,Mitsubishi Motors、Volvo、Red Hat Software、E*Trade、First USA Bank、the San Francisco Giants和San Diego Zoo等等。
1.7 PHP和C或Java相似吗?
PHP程序和C程序有略微相似的地方,这是由于PHP来源于C、Perl和Java。一些对C语言来讲比较麻烦的方面(如处理字符串的技术),由于采用了和Perl相近的技术,在PHP中就不再是麻烦了。PHP中也不包括Java中的一些面向对象特性。
PHP能很好地处理某些低级的任务,如果代码需要运行的特别快,可以很方便的使用C为PHP程序编写模块。
1.8 PHP比ColdFusion、Active Server Page或Java Server Page更好吗?
以流行的商议方式,我总是回答,“可以是,也可以不是”。
回答是,是由于它的费用(免费)以及可以通过邮件列表、IRC而在世界范围内有广泛的支持网络。同时PHP还在不断地发展着,如果想要一个PHP现在没有的特性时,请等待几个月,就有人很快为PHP编程而加上此种特性。
回答不是,是由于商业软件有比PHP更多的特性。例如,Allaire's ColdFusion有一个已证实可靠的搜索引擎组件。微软的Active Server Page技术提供了与Outlook、电子邮件和工作组程序相结合的能力。Java Server Page让使用者可以使用互联网上的大量开放源码模块。
1.9 总结
对于遍及互联网上的PHP,本章仅仅简要提到了它的一些特性,本章也介绍了当设计互联网应用程序时,PHP为什么是最好的编程工具之一的原因。

php文件一样可以用BT软件打开的,放心使用,没问题的。我以前也下过好多PHP的种子文件。
你是要让你的装了IIS的机器支持PHP呢还是只是单纯的打开*.php的文件?

如果是要支持PHP,那么你要装专门的PHP解释器。

首先你去下载php-4.3.4-Win32.zip。

下面为配置步骤:

1)将php-4.3.3RC4-Win32.zip里面的所有文件和文件夹解压缩并放置在C:\\php4\\文件夹中,没有自己创建该文件夹

2)进入php4文件夹,查看根目录和子目录,把所有.dll文件都统统复制粘贴到C:\\WINNT\\system32(WIN2K)或C:\\WINDOWS\\system32(WINXP)中

3)把php4文件夹里面的php.ini-dist和php.exe文件复制到

C:\\WINNT\\(WIN2K)或C:\\WINDOWS\\(WINXP)中,并将php.ini-dist文件改为php.ini

4)双击php.ini打开该配置文件,进行下面3个地方的修改:

1> 把extension_dir = "C:\\php4\\extensions" 改为你安装php4的 extensions文件夹路径

2> 把 ;cgi.force_redirect = 1 改为 cgi.force_redirect = 0

3> 把 register_globals = Off 改为 register_globals = On

4> 找到 ;Windows Extensions 段,你应该可以看到如下代码

;

;extension=php_bz2.dll

;extension=php_cpdf.dll

;extension=php_crack.dll

;extension=php_curl.dll

;extension=php_db.dll

;extension=php_dba.dll

;extension=php_dbase.dll

;extension=php_dbx.dll

;extension=php_domxml.dll

;extension=php_exif.dll

;extension=php_fdf.dll

;extension=php_filepro.dll

;extension=php_gd2.dll

;extension=php_gettext.dll

;extension=php_hyperwave.dll

;extension=php_iconv.dll

;extension=php_ifx.dll

;extension=php_iisfunc.dll

;extension=php_imap.dll

;extension=php_interbase.dll

;extension=php_java.dll

;extension=php_ldap.dll

;extension=php_mbstring.dll

;extension=php_mcrypt.dll

;extension=php_mhash.dll

;extension=php_mime_magic.dll

;extension=php_ming.dll

;extension=php_mssql.dll

;extension=php_msql.dll

;extension=php_oci8.dll

;extension=php_openssl.dll

;extension=php_oracle.dll

;extension=php_pdf.dll

;extension=php_pgsql.dll

;extension=php_printer.dll

;extension=php_shmop.dll

;extension=php_snmp.dll

;extension=php_sockets.dll

;extension=php_sybase_ct.dll

;extension=php_w32api.dll

;extension=php_xmlrpc.dll

;extension=php_xslt.dll

;extension=php_yaz.dll

;extension=php_zip.dll

具体还得看你需要加载哪些.dll文件,不过你按照下面我这样改也行,主要是要加载的.dll文件就去掉前面的分号( ; ) :

;

;extension=php_bz2.dll

;extension=php_cpdf.dll

;extension=php_crack.dll

;extension=php_curl.dll

;extension=php_db.dll

;extension=php_dba.dll

;extension=php_dbase.dll

;extension=php_dbx.dll

;extension=php_domxml.dll

extension=php_exif.dll

;extension=php_fdf.dll

;extension=php_filepro.dll

extension=php_gd2.dll

;extension=php_gettext.dll

;extension=php_hyperwave.dll

;extension=php_iconv.dll

;extension=php_ifx.dll

;extension=php_iisfunc.dll

extension=php_imap.dll

;extension=php_interbase.dll

;extension=php_java.dll

;extension=php_ldap.dll

;extension=php_mbstring.dll

;extension=php_mcrypt.dll

;extension=php_mhash.dll

;extension=php_mime_magic.dll

;extension=php_ming.dll

;extension=php_mssql.dll

;extension=php_msql.dll

;extension=php_oci8.dll

;extension=php_openssl.dll

;extension=php_oracle.dll

;extension=php_pdf.dll

;extension=php_pgsql.dll

;extension=php_printer.dll

;extension=php_shmop.dll

;extension=php_snmp.dll

;extension=php_sockets.dll

;extension=php_sybase_ct.dll

;extension=php_w32api.dll

;extension=php_xmlrpc.dll

;extension=php_xslt.dll

;extension=php_yaz.dll

;extension=php_zip.dll

5)再次打开控制面板-管理工具-Internet服务管理器,在"默认web站点"上右键单击,选择"属性"

6)选中"默认 Web 站点 属性"窗口的"主目录"选项卡,点击右下角的"配置"按钮,出现"应用程序配置"窗口,点击"应用程序映射"下面的"添加"按钮,添加下面的程序映射:

可执行文件: C:\\php4\\php.exe %s %s (也就是你的php4文件夹路径)

扩展名: .php

确定完成配置!

7)切换到"默认 Web 站点 属性"窗口的"ISAPI筛选器"选项卡,点击右边的"添加"按钮,添加下面的一个筛选器:

筛选器名称: PHP

可执行文件: C:\\php4\\sapi\\php4isapi.dll (也就是你的php4文件夹的 sapi文件夹路径)

确定后关闭"Internet服务管理器"

8)继续切换到"默认 Web 站点 属性"窗口的"文档"选项卡,点击右边的"添加"按钮,添加如下"启用默认文档":

index.php 也可以添加 index.php3 index.php4 等等 看你的需要而定

点击左边的"↑"按钮,把index.php文档提升到最上面

现在你的IIS也支持PHP了.
PHP 是一种新型的 CGI 程序编写语言.应该说是个嵌入式脚本文件。和ASP、JSP有很多类似的功能。唯一不同的是,ASP要整站的解释在传递,而PHP则可以嵌入HTML代码里,和HTML一起发送。要读.PHP文件就要用PHP解释器。现在用的是PHP V4.3.0有支持Windows和 Unix/Linux的版本。当然你还要在自己机子上虚拟主机,可以用很出名的Apache软件。

.php可以用文本编辑器(如记事本、emeditor、phpedit等)打开。如果要运行它得安装相应的php解释器和web服务支持才行。

参考资料:http://..com/question/3222075.html

❺ PHP语言需要避免的误区

PHP语言需要避免的误区

PHP是一种非常流行的开源服务器端脚本语言,你在万维网看到的大多数网站都是使用php开发的。但是,你大概很奇怪的注意到有少部分的人发誓要离php 远远的。但是令人更奇怪的是或者很震惊的说他们不用php是因为一些被证实的语言缺点。他们决定不用php,是因为误解。那么误解是什么呢?和我一起来看看吧!

1. PHP是一种面向对象语言,但面向对象并不彻底

这完全不对。所有认为php不是彻底面向对象的程序员,尤其是Java程序员,都需要上一个PHP的基础培训;他们会发现PHP中大量面向对象的特性。例如:接口、方法、抽象类等等。我同意早期的PHP版本确实不支持太多面向对象的特性,但PHP5已经有强大的面向对象支持。而且,你一定想不到编码在 PHP中会变得如此简单,那是因为PHP和面向对象结合的原因。

所以,消除这个误解吧。

2.PHP无法实现特定功能

我很清楚这种表述很含糊,但是我不能想出任何更好的说法。这是一个很含糊的误解,开发人员认为PHP不能帮助他们实现一些诸如内存访问的功能或者一些 PHP主要发行版没有提供支持的功能。但事实是PHP是一种可扩展的语言,所以你需要做的'是用C或者C++编码,然后创建对应的扩展。

其实,你根本不需要自己动手去创建扩展,因为这里已经有数以百计的可用扩展。你唯一需要做的就是去寻找它们。

3.PHP 是不安全的

开发者对PHP的另外一个误解就是PHP网站和应用是不安全的。但是,为什么你会希望它在默认情况下是安全,为什么不编写安全的代码? 我知道这里一直存在很多不安全的PHP代码,因为最初的学习曲线是简单的而且很容易上手。所以,作为一个开发者,你需要使它尽可能的安全。

.Net可以帮助你在默认情况下是安全的,相比之下PHP确实缺少很多。但是如果你是一个训练有素的程序员,那么你其实不要默认情况的安全帮助。Include通常是安全的,但是你需要要小心。如果它们的路径是动态生成的,对指令的透彻理解可以帮助你让代码更安全。

4. 它不能适应大型应用

大型复杂应用需要建立在自身可靠和高性能的语言之上,这是PHP在一定程度上所没有的。但是,如果你设计和开发的应用程序架构稳定,为什么你会对它的性能和可扩展性有疑问呢?

事实上一些顶尖网站,如Facebook、维基网络和雅虎等等,都是基于PHP构建的,就像我们所想的那样,这些巨型网站都工作的很好。

5. PHP只能用于网站开发

这也是一个误解,尽管看起来它有点合乎逻辑,因为PHP是网站开发中最常见的语言。但也有一些被称为命令行界面的东西,这可以确保你的PHP应用程序可以在Web服务器之外运行。

你可能不相信,但即使是那些很大程度上取决于CPU能力的应用程序,也可以用PHP开发的,使用PHP CLI来运行。

更重要的是,如果你想使用PHP开发桌面应用程序,不用担心,使用Windows特定扩展你可以做到这一点。

6.开发过程慢

这是一直广为流传的误解。我不知道起源于何处?这个流言可能来自于曾经一个时期php代码很乱并且代码中四处充斥着Mysql语句(他们以此为反例,但是实际上我们都不这样用)。问题是为什么这样开发过程就慢了?当大量的php框架出现时,可以大大的加速开发的过程。毋庸置疑,你可以在短时间内开发出很大的程序,不论它有多么的复杂。所以,你用php开发一点都不慢,特别是当你使用php框架的时候。

7.专业开发人员不使用PHP

PHP是针对初学者的,它是为那些不是认认真真做开发的人设计的。这些说法都和PHP的使用有关。这只是一种误解,认同它没有任何意义。这里有如此多的网络应用,包括一些大型的,都是使用PHP构建的。可以想象这些说法是多么不正确。

8. 性能问题

这是一个棘手问题。这不是一个误解。和硬币有两个面一样,这个问题也是两方面的。事实上到处充斥着垃圾代码,隐式转换、不适用的模块、缺少操作符重载等等都能影响一个php应用的性能。但是这个依赖于你是不是有足够的能力去用好这个语言,用它编写稳定地、快速地应用。

性能是由你设计的架构和你写的代码来决定的!

9. 便宜没好货

这条貌似在逻辑上很站得住脚,但是用到php上那就是完全是误解了!事实上,php的最大优势就是他的免费和开源,这意味着大多数提供应用开发服务的开发 者必须都精通它。虽然免费开源会带来一定问题,但是这也为了使用他们服务的客户提供成本优势。与商业开发语言相比较,php的开发成本比价低,但是这并非 意味着它的质量值得怀疑。和正确的开发者一起工作,可以获得更高性能的php应用。

10. PHP言过其实

真是这样么?你随口瞎说的吧。我不认为这样,还有很多的开发者也都不这样认为。

这不是所有php谎言的终结者。随着php语言不断的发展,变得越来与强大,误解也会跟着增长的。但请不要被他们忽悠了。多读,多问,自己动动手,然后你就知道,是不是真的了。

;

❻ 在PHP中“||”是什么意思

逻辑运算符 表示 或
if($a || $b == TRUE) //如果 $a 或 $b 任一为TRUE。
也可写为: if($a or $b == TRUE)
or与||是同一逻辑运算符的两种写法。

----------------以下为一些常用逻辑运算符------------------------
$a and $b 逻辑与 TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b 逻辑或 TRUE,如果 $a 或 $b 任一为TRUE。
$a xor $b 异或 TRUE,如果 $a 和 $b 不同时
! $a 逻辑非 TRUE,如果 $a 不为 TRUE。
$a && $b 逻辑与 TRUE,如果 $a 与 $b 都为TRUE。
其中and与&& 、or与||是同一逻辑运算符的两种写法。

❼ 什么是脚本语言

脚本语言的定义脚本语言(Script languages,scripting programming languages,scripting languages)是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。此命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批处理语言或工作控制语言。一个脚本通常是解释运行而非编译。虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。几乎所有计算机系统的各个层次都有一种脚本语言。包括操作系统层,如计算机游戏,网络应用程序,字处理文档,网络软件等。在许多方面,高级编程语言和脚本语言之间互相交叉,二者之间没有明确的界限。一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组序列。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令序列的指令,还可以编写更复杂的程序。简介脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。[1]它的命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批量处理语言或工作控制语言。[2]一个脚本通常是解释运行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处。[3](概述图片来源:[4])特点1、脚本语言(JavaScript,VBscript等)介于HTML和C,C++,Java,C#等编程语言之间。HTML通常用于格式化和链接文本。而编程语言通常用于向机器发出一系列复杂的指令。2、脚本语言与编程语言也有很多相似地方,其函数与编程语言比较相像一些,其也涉及到变量。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些.3、与程序代码的关系:脚本也是一种语言,其同样由程序代码组成。注:脚本语言一般都有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。Python、JAVASCRIPT,ASP,PHP,PERL,Nuva都是脚本语言。C/C++编译、链接后,可形成独立执行的exe文件。4、脚本语言是一种解释性的语言,例如Python、vbscript,javascript,installshield script,ActionScript等等,它不象c\c++等可以编译成二进制代码,以可执行文件的形式存在,脚本语言不需要编译,可以直接用,由解释器来负责解释。5、脚本语言一般都是以文本形式存在,类似于一种命令。举个例子说:如果建立了一个程序,叫aaa.exe,可以打开.aa为扩展名的文件,为.aa文件的编写指定了一套规则(语法),当别人编写了.aa文件后,自己的程序用这种规则来理解编写人的意图,并作出回应,那么,这一套规则就是脚本语言。[5]6、相对于编译型计算机编程语言:用脚本语言开发的程序在执行时,由其所对应的解释器(或称虚拟机)解释执行。系统程序设计语言是被预先编译成机器语言而执行的。脚本语言的主要特征是:程序代码即是脚本程序,亦是最终可执行文件。脚本语言可分为独立型和嵌入型,独立型脚本语言在其执行时完全依赖于解释器,而嵌入型脚本语言通常在编程语言中(如C,C++,VB,Java等)被嵌入使用。[1][6]7、和系统程序设计语言相比:不同是脚本语言是被解释而系统程序设计语言是被编译。被解释的语言由于没有编译时间而提供快速的转换,通过允许用户运行时编写应用程序,而不需要耗时的编译/打包过程。解释器使应用程序更加灵活,脚本语言的代码能够被实时生成和执行。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序设计师快速完成程序的编写工作。[1]编辑本段脚本语言的优缺点优点快速开发:脚本语言极大地简化了“开发、部署、测试和调试”的周期过程。容易部署:大多数脚本语言都能够随时部署,而不需要耗时的编译/打包过程。同已有技术的集成:脚本语言被Java或者COM这样的组件技术所包围,因此能够有效地利用代码。易学易用:很多脚本语言的技术要求通常要低一些,因此能够更容易地找到大量合适的技术人员。动态代码:脚本语言的代码能够被实时生成和执行,这是一项高级特性,在某些应用程序里(例如JavaScript里的动态类型)是很有用也是必需的。[7]缺点脚本语言不够全面:它们会要求一门“真正的”编程语言的存在,必须找一个数据库驱动程序将其内置进脚本语言里。脚本语言并不是软件工程和构建代码结构的最佳选择,例如面向对象和基于组件的开发。脚本语言通常不是“通用”语言,但是能够根据专门的应用来调整,例如:PHP和万维网。[7]编辑本段脚本语言的应用和发展一、应运(1):作为批次处理语言或工作控制语言。许多脚本语言用来执行一次性任务,尤其是系统管理方面。DOS,Windows的批处理文件和Unix的shell脚本都属于这种应用;(2):作为通用的编程语言存在,如Perl、Python、Ruby等。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言。但它们已经用于应用程序编写,用户也不把它们看作脚本语言;(3):许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(Non-Player Character,Non-Playable Character,Non-Player Class)和游戏环境的预编程动作。此类语言通常是为一个单独的应用程序所设计,虽然它们貌似一些通用语言(如Quake C,Modeled After C),但它们有自定义的功能;(4):网页中的嵌入式脚本语言。熟知的HTML(Hyper Text Mark-up Language)即超文本标记语言,就是一种脚本语言,它的解释器就是浏览器。JavaScript直到现在仍然是网页浏览器内的主要编程语言,它的ECMAScript标准化保证了它成为流行的通用嵌入式脚本语言。另外,随着动态网页技术发展,ASP、JSP、PHP等嵌入网页的脚本语言正被广泛使用,不过这些脚本要通过Web Server解释,而Html则被浏览器执行;(5):脚本语言在系统应用程序中嵌入使用,作为用户与系统的接口方式。在工业控制领域,PLC编程、组态软件的脚本语言是扩充组态系统功能的重要手段;在通信平台领域,IVR(自动语音应答)流程编程;Office办公软件,提供的宏和VBA;其他应用软件如ER Studio提供的Basic MacroEditor,用户可以编写Sax Basic脚本操作ER图,生成Access库、导出Word文档等扩展功能。[8] 这类的常见的有JavaScript、VBScript、Perl、PHP、Python、Ruby、Lua。脚本语言的特点是语法简单,一般以文本形式保存,并且不需要编译成目标程序,在调用的时候直接解释。这可以当做是脚本语言的判断标准,比如说JavaScript,你只需要用记事本新建一个Html文件,在里面加上一段脚本就可以了,在浏览器打开Html文件时自然会调用JS脚本。[9]一、工作控制语言和shellShell 脚本此类脚本用于自动化工作控制,即启动和控制系统程序的行为。大多的脚本语言解释器也同时是命令行界面,如Unix shell和MS-DOS command。其他如AppleScript,可以为系统增加脚本环境,但没有命令行界面。具体分类有:1.4NT2.AppleScript3.ARexx(Amiga Rexx)4.bash5.csh6.DCL7.JCL8.ksh9.Cmd.exe batch(Windows,OS/2)10.command batch(DOS)11.REXX12.tcsh13.sh14.Winbatch15.Windows PowerShell16.Windows Script Host17.zsh二、GUI 脚本GUI出现带来一种专业的控制计算机的脚本语言。它在用户和图形界面,菜单,按钮等之间互动。它经常用来自动化重复性动作,或设置一个标准状态。理论上它可以用来控制运行于基于GUI的计算机上的所有应用程序,但实际上这些语言是否被支持还要看应用程序和操作系统本身。当通过键盘进行互动时,这些语言也被称为宏语言。具体分类有:1.AutoHotkey2.AutoIt3.Expect三、应用程序定制的脚本语言许多大型的应用程序都包括根据用户需求而定制的惯用脚本语言。同样地,许多电脑游戏系统使用一种自定义脚本语言来表现NPC(non-player character,non-playable character,non-player class)和游戏环境的预编程动作。此类语言通常是为一个单独的应用程序所设计,虽然它们貌似一些通用语言(如QuakeC, modeled after C),但它们有自定义的功能。具体分类:1.Action Code Script2.ActionScript3.AutoLISP4.BlobbieScript5.Emacs Lisp6.Game Maker Language7.HyperTalk8.IPTSCRAE9.IRC script10.Lingo11.Matlab Embedded Language12.Maya Embedded Language13.mIRC script14.NWscript15.QuakeC16.UnrealScript17.Visual Basic for Applications18.VBScript19.ZZT-oop四、WEB编程脚本应用程序定制的脚本语言中有一种重要的类别,用于提供WEB页面的自定义功能。它专业处理互联网通信,使用网页浏览器作为用户界面。当然,大多现代WEB编程语言都比较强大可以做一些通用编程。具体分类:1.ColdFusion(Application Server)2.Lasso3.Miva4.SMX5.IPTSCRAE-一些网络开发团队用于创建论坛的工具五、文本处理语言处理基于文本的记录是脚本语言最早的用处之一。如Unix's awk最早是设计来帮助系统管理员处理调用UNIX基于文本的配置和LOG文件。Perl最早是用来产生报告的,现在它已经成了全面成熟的语言。具体分类:1.Awk2.Perl3.sed4.XSLT六、通用动态语言一些语言,比如Perl,从一门脚本语言发展成了更通用的编程语言。由于“解释执行,内存管理,动态”等特性,它们仍被称为脚本语言。但它们已经用于应用程序编写,用户也不把它们看作脚本语言。1.APL2.Dao3.Dylan4.Groovy5.Lua6.MUMPS(M)[10]7.newLISP8.Nuva9.Perl10.PHP11.Python12.Ruby13.Scheme14.Smalltalk15.SuperCard16.Tcl(Tool command language)七、扩展/可嵌入语言少数的语言被设计通过嵌入应用程序来取代应用程序定制的脚本语言。开发者(如使用C等其它系统语言)包入使脚本语言可以控制应用程序的hook。这些语言和应用程序定制的脚本语言是同种用途,但优点在于可以在应用程序之间传递一些技能。具体分类:1.Ch(C/C++ interpreter)2.Dao3.ECMAScript亦称DMDScript,JavaScript,JScript4.GameMonkeyScript5.Guile6.ICI7.Lua8.RBScript(REALbasic Script)9.Squirrel10.Tcl11.Z-ScriptJavaScript直到现在仍然是网页浏览器内的主要编程语言,它的ECMAScript标准化保证了它成为流行的通用嵌入性语言。Tcl作为一种扩展性语言而创建,但更多地被用作通用性语言,就如同Python, Perl, Ruby一样。八、其它1.BeanShell(scripting for Java)2.CobolScript3.Escapade (server side scripting)4.Euphoria5.F-Script6.Ferite7.Groovy8.Gui4Cli9.Io10.KiXtart11.Mondrian12.Object REXX13.Pike14.Pliant15.REBOL16.ScriptBasic17.Shorthand Language18.Simkin19.Sleep20.StepTalk21.Visual DialogScript

具体的网络上有介绍,可以去看看~望采纳!

阅读全文

与php起源相关的资料

热点内容
程序员阻止电脑自动弹出定位 浏览:166
如何做服务器服务商 浏览:759
su剖切命令 浏览:726
devc编译背景 浏览:209
学习单片机的意义 浏览:49
音频算法AEC 浏览:909
加密货币容易被盗 浏览:82
苹果平板如何开启隐私单个app 浏览:704
空调压缩机一开就停止 浏览:528
如何下载虎牙app 浏览:847
日语年号的算法 浏览:955
dev里面的编译日志咋调出来 浏览:298
php函数引用返回 浏览:816
文件夹和文件夹的创建 浏览:259
香港加密货币牌照 浏览:838
程序员鼓励自己的代码 浏览:393
计算机网络原理pdf 浏览:752
吃鸡国际体验服为什么服务器繁忙 浏览:94
php中sleep 浏览:491
vr怎么看视频算法 浏览:88