文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>PEAR版本号说明

PEAR版本号说明

时间:2008-04-14  来源:剑心通明

原文:PHP5 Power Programming Chapter 10 . Using PEAR
    PEAR 是
[url=javascript:;]PHP[/url]
的官方
[url=javascript:;]开源[/url]
类库, PHP Extension and Application Repository 的缩写。Pear在英文中是梨子的意思。PEAR将PHP程序开发过程中常用的功能编写成类库,涵盖页面呈面、数据库访问、文件操作、数据结构、缓存操 作、
[url=javascript:;]网络[/url]
协议等许多方面,用户可以很方便地使用。PEAR的大部分Package采用LGPL、PHP、BSD许可证,可以自由地使用源码。关于PEAR 更详细的信息,请访问
pear.php.net

“不要重复发明轮子!”PEAR是为PHP代码的重用而开发的。使用PEAR可以大大提高PHP程序的开发效率。前人已经完成的工作,我们可以直接使用,不需要重复开发,更可以保证开发代码的质量。
PEAR概念
    首先介绍一个PPEAR的一些概念,即 packages , releases 和 versioning scheme
Packages
  当你从PEAR安装一些东西,就得去下载和安装一些特殊的  发行包。每一包都包含下面的信息:
包名称  例如:HTML_QuickForm
        概要,描述,和主页的URL
         一个或多个的维护人员
         License 信息
         许多发行版本
    Pear包和其它包(如:Linux的RPM ,Debian包, System V UNIX PKG 格式)是不一样的。一个最主要的区别是PEAR包是基于多个平台设计的,不是为了一种操作系统设计的,大部分PEAR包是平台无关性的,PEAR包可以安装在支持PHP的任何平台上,包括现在流行的类UNIX系统和微软的Windows,以及苹果的MacOS X.
Releases
    像PHP一样,PEAR的代码连同安装指令一起压缩到一个tar.gz或者zip文件中。PEAR包也同样是通过tar.gz(或tgz)文件来发布的,里面包含了可以被PEAR安装程序读取的安装指令。
除了这个包的细节内容外,每一个发行包都包含:
         版本号
         文件列表和安装指令
         发行版别(stable,beta ,alpha , devel ,或者snapshot)
在安装PEAR包时,默认是安装最近稳定的发行包,例如:
$ pear install XML_Parserdownloading XML_Parser-1.1.0.tgz ...Starting to download XML_Parser-1.1.0.tgz (7,273 bytes).....done: 7,273 bytesinstall ok: XML_Parser 1.1.0    通过执行命令:pear install XML_Parser,可以来安装最近的稳定的确良XML_Parser包,例子中的版本为 1.1。
    为什么不把PEAR包做成像RPM包一样有多种原因,最主要的原因是,PHP是可以在各个平台上运行的,所以PEAR包也得要在各个平台上运行,这就意味着要做一个RPM包在Windows下,Darwiin下都可以运,这个工作量是很大的,因此最佳的选择就是用PHP来执行安装程序来在各个平台上运行是最方便的, 也是最简单的。
Version Nubmers
Version Number Format  版本号格式
PEAR一般由三个数字和一些特殊字符组成。语法如下:
Major [ . minor [ . patch ]] [ dev | a | b | RC | pl [ N ]]
下面是一些例子:
Version String
Major Version
Minor Version
Patch Level
Release State'
1
1
1b1
1
b1
1.0
1
0
1.0a1
1
0
a1
1.2.1
1
2
1
1.2.1dev
1
2
1
dev
2.0.0-dev
2
0
0
dev
1.2.1RC1
1
2
1
RC1
    大多数PEAR包的版本号是由二个或三个数字加上一些发行状态部分,例如:”b1”
    下面是一个发行状态的列表:
额外的
说明:
Dev
实验中,用于测试的发行版本
A
第一个版本,不是最终的,也许有许多BUG,并且很多API不是最终的.
B
第二个版本;API或多或少的稳定,但仍有一些BUG。.
RC
Release candidate; 如果这个发行版没有问题,那么RC版将会再发行,成为最终的版本。
Pl
Patch level;在发行版本后做的一些修改,但不是经常的。
Comparing Version Numbers
    有时候要对二个PEAR发行包进行比较以确定哪一个包比较新。例如,运行 pear list-upgrades 命令时,你安装的包的版本号将与pear.php.net上面的最新包的版本号进行比较,来确定哪一个是新的。
    这个比较过程,首先是从major 版本开始的,如果A的major版本号大于B,那么A比B新。如果major相同,那么minor版号将用同样的方法比较,但是如果只有B拥有minor版本号,那么B将比A新。如果A与B的minor版本号也相同,patch level将用同样的方法比较,如果patch level也相同,那么发行状态将决定结果。
    比较extra段是很麻烦的事情,如果A没有extra段,而B有,不能自动的认为B是新的。dev , a ,b , RC,被认为比没有 extra段旧,而pl (patch level ) 被认为是新的。
下面是一版本比较例子:
Version A
Version B
Newest?
Reason?
1.0
1.1
B
B有比较大的minor版本号
2.0
1.1
A
A 有比较大的major版本号.
2.0.1
2.0
A
A 有 patch level; B 没有.
2.0b1
2.0
B
A "beta" 发行状态 "老于" 没有发行状态.
2.0RC1
2.0b1
A
RC比beta新在major.minor相同时.
1.0
1.0.0
B
这个很微妙,加了一个位让版本更新


相关阅读 更多 +
排行榜 更多 +
夕鸟

夕鸟

生活实用 下载
备忘录记事本

备忘录记事本

生活实用 下载
梦幻甜心蛋糕店手游 v1.0 安卓版

梦幻甜心蛋糕店手游 v1.0 安卓版

休闲益智 下载