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为表单获取的URL 地址预设 http 字符串函数代码
May 26 PHP
windows下PHP_intl.dll正确配置方法(apache2.2+php5.3.5)
Jan 14 PHP
PHP计算指定日期所在周的开始和结束日期的方法
Mar 24 PHP
php控制文件下载速度的方法
Mar 24 PHP
Zend Framework创建自己的动作助手详解
Mar 05 PHP
PHP获取客户端及服务器端IP的封装类
Jul 21 PHP
PHP7新增运算符用法实例分析
Sep 26 PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
Dec 07 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
Dec 20 PHP
Yii框架的路由配置方法分析
Sep 09 PHP
PHP实现基本留言板功能原理与步骤详解
Mar 26 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
Apr 23 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
索尼SONY ICF-7600A(W)电路分析
2021/03/01 无线电
php开启openssl的方法
2014/05/15 PHP
destoon文章模块调用企业会员资料的方法
2014/08/22 PHP
如何使用php脚本给html中引用的js和css路径打上版本号
2015/11/18 PHP
php简单统计中文个数的方法
2016/09/30 PHP
TP5框架实现签到功能的方法分析
2020/04/05 PHP
jQuery实现设置、移除文本框默认值功能
2015/01/13 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
详解JavaScript的Polymer框架中的通知交互
2015/07/29 Javascript
逐一介绍Jquery data()、Jquery stop()、jquery delay()函数(详)
2015/11/04 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
2016/06/15 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
React根据宽度自适应高度的示例代码
2017/10/11 Javascript
dts文件中删除一个node或属性的操作方法
2018/08/05 Javascript
vue中使用props传值的方法
2019/05/08 Javascript
Angular8基础应用之表单及其验证
2019/08/11 Javascript
使用JS来动态操作css的几种方法
2019/12/18 Javascript
Python使用爬虫猜密码
2016/02/19 Python
Python Socket使用实例
2017/12/18 Python
Python实现账号密码输错三次即锁定功能简单示例
2019/03/29 Python
python tornado修改log输出方式
2019/11/18 Python
python 两个一样的字符串用==结果为false问题的解决
2020/03/12 Python
使用Python+Appuim 清理微信的方法
2021/01/26 Python
美国在线健康和美容市场:Pharmapacks
2018/12/05 全球购物
文秘专业自荐信
2013/10/14 职场文书
天地会口号
2014/06/17 职场文书
学生会干部自我鉴定2014
2014/09/18 职场文书
党员批评与自我批评总结
2014/10/15 职场文书
学生检讨书范文
2014/10/30 职场文书
车间主任岗位职责
2015/02/03 职场文书
老乡会致辞
2015/07/28 职场文书
2016学习全国教书育人楷模先进事迹心得体会
2016/01/21 职场文书
小学四年级作文之人物作文
2019/11/06 职场文书
pandas:get_dummies()与pd.factorize()的用法及区别说明
2021/05/21 Python
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python