当前位置: 首页 > 编程日记 > 正文

PEAR, PECL和Perl的区别

PEAR是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR就是PHP的CPAN。


PECL (PHP Extension Community Library),PHP的扩展库,它提供了一系列已知的扩展库,由C++等其他语言编写而成,以.so形式出现,.so 为共享库,是shared object,用于动态连接的,和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,是指程序运行的解释器。

====================================================================================================================

Pear:是PHP的扩展代码包,所有的扩展均以PHP代码的形式出现,功能强大,安装简单,甚至可以改改就用。使用的时候,要在代码中进行Include才能够使用。


Pecl:是PHP的标准扩展,可以补充实际开发中所需的功能,所有的扩展都需要安装,在Windows下面以Dll的形式出现,在linux下面,需要单独进行编译,它的表现形式为根据PHP官方的标准用C语言写成,尽管源码开放但是一般人无法随意更改源码。


最直接的表述:Pear是PHP的上层扩展,Pecl是PHP的底层扩展。
 
 
这是一些PHP扩展模块的集合
扩展PHP有两种方法
一种是用纯粹的PHP代码写函数和类,pear就是这样一个项目,主页是pear.php.net
另外一种是用c或者c++编写外部模块加载至php中,pecl就是干这个事的,主页是pecl.php.net

这两种方法其实都是为特定的应用提供现成的函数或者类,本质上来说都是一样的

相关文章:

永远不要对 AI 说:“我不行!”

最近这些年,如果我要问什么技术最值钱,我想超过90%的人都会说是:人工智能。确实,随着近些年人工智能发展与普及,AI研发岗早已成为编程领域薪水最高的岗位之一。但扎心的是,一提到 AI ,相信绝大部…

ThoughtWorks雷达上的新奇变化

与往常一样,ThoughtWorks技术雷达涵盖了四方面内容:语言与框架、平台、技术和工具,而且其中每个领域都会有四方面内容:采用、试用、评估及保留。本文列举了相关领域中较新和值得注意的内容。\\语言与框架\\采用: Ember.js由于其生…

用于时序动作提名生成任务,爱奇艺提出BC-GNN图神经网络 | ECCV 2020

时序动作提名生成任务可以从未处理的长视频中定位出包含动作内容的片段,对视频理解以及时序行为检测任务等有着重要的作用。随着视频数量的激增以及视频内容的丰富,对时序动作提名算法的关注和需求也得到巨大提升。然而目前的方法多采用先生成起止边界&a…

剖析ASP.NET下部构造

crystal译yesky(前面我已说过ASP.NET拥有全新的下部构造)当我说到全新的下部构造……我得再次强调,是全新的下部构造! 它不只 是 ASP 的一个简单变化. 在此引入收管代码(managed code)这样一个全新概念,它横贯整个视窗开发平台. 受管代码在 NGWS Runtime下运行. NGWS Runtime是…

超大磁盘分区工具parted使用介绍(一)

使用parted GNU Parted有两种运行模式:命令行模式和交互模式。 1.命令行模式的选项 当你调用命令行模式时,parted的语法是这样的: 格式1# parted [option] device 格式2# parted [option] device [command [argument]] 格式1&am…

Sea.js学习4——Sea.js的配置

可以对 Sea.js 进行配置,让模块编写、开发调试更方便。 seajs.config seajs.config(options) 用来进行配置的方法。 seajs.config({// 别名配置alias: {es5-safe: gallery/es5-safe/0.9.3/es5-safe,json: gallery/json/1.0.2/json,jquery: jquery/jquery/1.10.1/jqu…

SQL Server 性能基线和监控

就讲讲监控那些值,基线抓的是那些值。如何做告警 环境:windows 2008r2,sql server 2008r2 sp1 性能基线: cpu: \Processor(_Total)\% Processor Time    \Processor(_Total)\% Privileged Time \SQLServer:SQL Statistics\Bat…

ASP.NET特写

作者: 仙人掌工作室 创建动态Web页面的新技术已经以CLR服务为基础全部重新改写。到目前为止,所有.NET提供的语言都可用于编写ASP.NET页面,但页面的扩展名和ASP 3.0的不同。具体地说,简单Web页面以“.aspx”为扩展名&#xff0c…

Google出品,EfficientNet在目标检测达到最新SOTA | CVPR 2020

作者 | tanmingxing,rpang,qvl 来源 | 晓飞的算法工程笔记() 介绍 目前目标检测领域,高精度的模型通常需要很大的参数量和计算量,而轻量级的网络则一般都会牺牲精度。因此,论文希望建立一个可伸…

存储过程和存储函数初步

2019独角兽企业重金招聘Python工程师标准>>> 存储过程和函数初步 简单的来说,存储过程就是一条或者多条 SQL 语句的集合,可视为批处理文件,但是其作用不仅限于批处理。 ###存储程序可以分为存储过程和函数。 MySQL 中创建存储过程…

asp.net 入门的五个步骤

作者: rob howard 步骤 1:下载和安装 .net sdk asp.net 是作为 .net sdk 的一部分提供的,它是创建、生成和测试基于 .net framework 的应用程序所需要的所有技术的集合。要下载和安装 .net sdk,请前往 msdn online .net 开发人…

我帮公司财务写了个“群发工资条”的Python脚本

作者 | 黄伟呢来源 | 数据分析与统计学之美介绍这是一个很好的Python自动化的案例。对于小公司,采用手动方式一个个发送邮件还是可以的。如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮件,就太浪…

[转] vim的复制粘贴小结

转载自: http://blogread.cn/it/article.php?id304 用vim这么久了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开编辑,真的不爽;上…

CCNA基础 IP地址子网划分

例:1.2.3.4/28 解析0:https://ws2.sinaimg.cn/large/006aKfj6jw1fa09e02m53j30u01hc7av.jpg 解析1:子网数量:2^n-x ( N表示 "/" 后面的数字;X表示8或16或24 ) (子网数量需要减去8或16视情况决…

一位IT從業人員的心路歷程

一位IT從業人員的心路歷程作者:章立民「Statgraphics統計繪圖入門詳論」是我的第一本著作,時值1990年9月,當時我還是一位大三升大四的學生。屈指算算,14年來,我已經撰寫了60本以上的書籍(簡體版未計算在內)&#xff0c…

面了大厂的 Python 岗后,炸了!

听说 Python 很难学?难在哪里?听说学完不知道做什么,为什么?结合我最近这些年的 Python 学习、开发经验,发现 90% 的人在初学 Python 时都会遇到下面这些问题——1. 没经验根本不知道从何学起,而且应用方向…

{} 与 function() { } , 选用空对象{}来存放keyValue

虽说js里面什么都能当对象,也能用填鸭式方法任意给对象添加属性,属性赋值.但是有些js内置的对象,类型属性也是没办法覆盖的。 贪多必失,写了一个用操作url 的js工具类,这个类上面有个属性叫queryString,我原…

java/android 设计模式学习笔记(1)--- 单例模式

前段时间公司一些同事在讨论单例模式(我是最渣的一个,都插不上嘴 T__T ),这个模式使用的频率很高,也可能是很多人最熟悉的设计模式,当然单例模式也算是最简单的设计模式之一吧,简单归简单&#…

实例解说.Net构架下的加密编程

yesky(张悦■yesky) http://www.yesky.com/SoftChannel/72342380484755456/20031225/1756613.shtml 很久以前就一直想写一个加密程序,但是一直感到太麻烦而没有动手,不过在前段时间学习.NET的过程中发现.NET的框架中封装了与加密有关的类。而且要在.NE…

人工智能新手入门学习路线!附学习资源合集

有段时间没跟大家分享编程资源福利了!今天为大家整理了人工智能新手入门学习路线,同时附700分钟的学习资源合集,相信这套福利可以帮你顺利入行AI!文末领取全部资料。一、AI基础好课学习资料整理(约317分钟)…

数据还原到指定时间点的处理示例

--创建测试数据库CREATE DATABASE DbGO--对数据库进行备份BACKUP DATABASE Db TO DISKc:\db.bak WITH FORMATGO--创建测试表CREATE TABLE Db.dbo.TB_test(ID int)--延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点…

kvm cpu的亲和性绑定配置

1.CPU的绑定配置进程的处理器亲和性(process affinity):指将进程绑定到特定的一个或多个cpu上去执行,而不允许将进程调度到其他cpu上。物理cpu:表示真实的cpu个数逻辑cpu:表示所有拥有一个完整真实cpu功能的…

李开复对话Yoshua Bengio:AI技术的下一个突破

7月23日,在SGInnovate主办的“深度科技(Deep Tech)造福人类”活动上,创新工场董事长兼CEO李开复与Element AI联合创始人Yoshua Bengio进行了一场对话,讨论了人工智能的未来发展。Yoshua Bengio是深度学习三大发明人之一…

单链表功能大全

单链表很全的例子&#xff0c;增加&#xff0c;删除&#xff0c;排序&#xff0c;都有了 #include <stdio.h>#include <stdlib.h>typedef struct node{int nDate;struct node *pstnext;}Node;//链表输出void output(Node *head){Node *p head->pstnext;while(N…

Access外键 级联更新、删除

工具栏-->"关系"。 打开主表和从表。 将主表的字段拖动到从表的对应字段。 &#xff08;两个字段要求类型相同。 如果主表是自动编号&#xff0c;那么从表用长整型.&#xff09; Access添加外键约束(1)"实施完整性约束"(2)"左联接"(3)"实…

20161124网络爬虫技术学习

参考书籍&#xff1a;《自己动手写网络爬虫》 网络爬虫的基本操作是抓取网页。 “打开”网页的过程其实就是浏览器作为一个浏览的“客户端”&#xff0c;向服务器端发送了一次请穷求&#xff0c;把服务器端的文件“抓”到本地&#xff0c;再进行解释&#xff0c;展现。更进一步…

关于何种情况下使用DataGrid、DataList或Repeater的一些讨论

作者&#xff1a;Scott Mitchell &#xff3b;概述&#xff3d; WEB开发自从有了基于脚本的WEB编程技术&#xff08;如ASP&#xff09;以来&#xff0c;经历了一个漫长的过程。通过使用微软的ASP.Net技术&#xff0c;传统的ASP中大量的、单调乏味的、重复性的编程工作成为了历史…

UDP客户端不用绑定吗IP和端口?

2019独角兽企业重金招聘Python工程师标准>>> 书上都是这么说的&#xff0c;UDP客户端不用绑定IP和端口&#xff0c;操作系统会给它自动分配端口。。。。 但是虽然没有显示绑定&#xff0c;但是操作系统却似乎做了些隐蔽的事情。 首先&#xff0c;在客户端&#xff0…

算法实现太难了?机器学习也需要开源软件

作者 | Soren Sonnenburg等译者 | 刘畅出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;导读&#xff1a;开源工具已经趋于成熟&#xff0c;这使其能构建大规模的自然场景下的系统。与此同时&#xff0c;机器学习领域为各种应用开发了大量强大的学习算法。但是&#x…

数据库备份定期删除程序的开发。

第一.最近客户的服务器数据库备份每天都在进行&#xff0c;随着数据量的不断的增加&#xff0c;备份也在不断的进行变大。 第二.于是一些问题就出现了客户的服务器的磁盘的空间有限&#xff0c;定期数据库备份文件太大而导致无法进行保存问题。 第三.从而导致了服务器宕机以及服…