PHP扩展模块Pecl、Pear以及Perl的区别


Posted in PHP onApril 09, 2014

一、简短总结:
pear:一个书写的比较规范,国外较流行的工具箱代码集
pecl:php扩展包,但不属于php基本扩展范围
perl:一种早于php出现的脚本级语言,php借鉴了他的正则表达式部分

二、Pear、Pecl都是PHP扩展模块的集合。是扩展PHP的两种方法:

A.一种是用纯粹的PHP代码写函数和类。
Pear就是这样一个项目。PEAR是PHP的官方开源类库(PHP Extension and Application Repository的缩写)。Pear在英文中是梨子的意思。PEAR将PHP程序开发过程中常用的功能编写成类库,涵盖了页面呈面、数据库访问、文件操作、数据结构、缓存操作、网络协议等许多方面,用户可以很方便地使用。它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR就是PHP的cpan。其主页是pear.php.net。

B.另外一种是用c或者c++编写外部模块加载至php中。
Pecl(The PHP Extension Community Library)就是干这个事的,PHP的标准扩展,可以补充实际开发中所需的功能。所有的扩展都需要安装,在Windows下面以DLL的形式出现;在linux下面需要单独进行编译,它的表现形式为根据PHP官方的标准用C语言写成,尽管源码开放但是一般人无法随意更改源码。其主页是pecl.php.net。
最直接的表述:Pear是PHP的上层扩展,Pecl是PHP的底层扩展。
这两种方法其实都是为特定的应用提供现成的函数或者类,本质上来说都是一样的。

三、PEAR, PECL和Perl的区别

PEAR是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR就是PHP的CPAN。
PECL (PHP Extension Community Library),PHP的扩展库,它提供了一系列已知的扩展库,由C++等其他语言编写而成,多数以Dll(动态链接库)的形式体现,为比PEAR更快,但是与PEAR不同的是,PECL需要在服务器上配置并被注册到主机中。
Perl (Practical Extraction and Report Language)最初的设计者为拉里·沃尔(Larry Wall),他于1987年12月18日发表。Perl借取了C、sed、awk、shell scripting以及很多其他程序语言的特性。其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。简而言之,Perl象C一样强大,象awk、sed等脚本描述语言一样方便。Perl 一般被称为“实用报表提取语言”(Practical Extraction and Report Language),你也可能看到“perl”,所有的字母都是小写的。一般,“Perl”,有大写的 P,是指语言本身,而“perl”,小写的 p,是指程序运行的解释器。

 

PHP 相关文章推荐
PHP 开源框架22个简单简介
Aug 24 PHP
php array_pop()数组函数将数组最后一个单元弹出(出栈)
Jul 12 PHP
关于PHP实现异步操作的研究
Feb 03 PHP
php图像处理函数大全(推荐收藏)
Jul 11 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
Feb 02 PHP
php生成RSS订阅的方法
Feb 13 PHP
PHP MVC框架路由学习笔记
Mar 02 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
Jul 14 PHP
thinkPHP简单调用函数与类库的方法
Mar 15 PHP
PHP高效获取远程图片尺寸和大小的实现方法
Oct 20 PHP
PHP PDOStatement::fetchAll讲解
Jan 31 PHP
PHP实现通过文本文件统计页面访问量功能示例
Feb 13 PHP
排序算法之PHP版快速排序、冒泡排序
Apr 09 #PHP
PHP读取大文件的类SplFileObject使用介绍
Apr 09 #PHP
php解决约瑟夫环示例
Apr 09 #PHP
适用于抽奖程序、随机广告的PHP概率算法实例
Apr 09 #PHP
PHP父类调用子类方法的代码例子
Apr 09 #PHP
一个基于phpQuery的php通用采集类分享
Apr 09 #PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 #PHP
You might like
PHP 中关于ord($str)>0x80的详细说明
2012/09/23 PHP
浅析php中三个等号(===)和两个等号(==)的区别
2013/08/06 PHP
在php和MySql中计算时间差的方法详解
2015/03/27 PHP
eclipse php wamp配置教程
2016/06/30 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
JavaScript闭包 懂不懂由你反正我是懂了
2011/10/21 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
javascript中的遍历for in 以及with的用法
2014/12/22 Javascript
jquery实现submit提交表单
2015/02/03 Javascript
JavaScript动态修改弹出窗口大小的方法
2015/04/06 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
2016/09/18 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
2016/09/23 Javascript
React学习笔记之事件处理(二)
2017/07/02 Javascript
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
vue2 设置router-view默认路径的实例
2018/09/20 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
[00:33]DOTA2上海特级锦标赛 CDEC战队宣传片
2016/03/04 DOTA
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
python统计中文字符数量的两种方法
2019/01/31 Python
PyQt5 加载图片和文本文件的实例
2019/06/14 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
Python入门Anaconda和Pycharm的安装和配置详解
2019/07/16 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
python 解决print数组/矩阵无法完整输出的问题
2020/02/19 Python
python适合做数据挖掘吗
2020/06/16 Python
基于python实现计算两组数据P值
2020/07/10 Python
售后服务承诺函格式
2015/01/21 职场文书
公司出纳岗位职责
2015/03/31 职场文书
个人落户申请书怎么写?
2019/06/28 职场文书
《卧薪尝胆》读后感3篇
2019/12/26 职场文书
《最后一头战象》读后感:动物也有感情
2020/01/02 职场文书
Nginx配置SSL证书出错解决方案
2021/03/31 Servers
Android开发 使用文件储存的方式保存QQ密码
2022/04/24 Java/Android