用Pear加速PHP程序开发

pear用户手册英文版 PEAR(PHP Extension and Application Repository)目的是实做可以重复使用的函式库来提供PHP社群使用,而用户手册是提供用户使用PEAR! 立即下载
用Pear加速PHP程序开发

本文转载自:http://www.phpe.net/articles/346.shtml


?来源:TechRepublic
?

及时交付应用程序是确定解决方案采用何种技术的关键所在,PHP借助于PEAR(PHP Extension and Application Repository:PHP扩展与应用库)会大大促进其开发过程。PEAR是一种代码库,它为标准程序功能提供预先编写的类,从而大大降低了应用程序的开发时间。PEAR在概念上类同于Perl的CPAN,PEAR包含了具有丰富特性的功能函数,包括数据库、邮件和错误处理等。在采用PEAR的情况下,开发人员就可以部署和增强已经编写的基本函数同时把注意力集中到编写程序新功能这一方面上来。

PEAR基础

创建PEAR的目的是为开发人员共享PHP代码和促进代码的重用提供一种标准化的方式。该项目始终处于开发的过程中,用户可以提交自己编写的代码供加入PEAR库使用,后者则同PHP捆绑。所有的PEAR包都在考虑到语法和可读性的情况下严格遵守编码规则,这些代码由用C语言编写的PHP或者PHP扩展所组成。

Stig Bakken于1999年晚些时候开始着手开发PEAR项目。他的目的是创建一个有组织的代码库,由这个代码库起到PHP开发人员团体的资源库作用。该项目在过去的两年里成长的非常快,目前已经包含了相当多的、非常有用的可重用代码。虽然其他的PHP代码库也不少,比如 Zend的Code Gallery和PHP Builder的Source Code Snippet Library等等都非常有名,但是,PEAR提供了一种便利函数之间互操作的标准。此外,提交给PEAR的代码会接受严格的检查,由这类标准和检查措施保证代码的质量和可靠性。

可用的功能

PEAR分成三类:PEAR核心组件、PEAR包和PECL包。核心组件(Core Component)包括PEAR和PEAR_Error的基类以及数据库、HTTP、日志记录和电子邮件函数等。PEAR包包括提供认证、联网和文件系统特性的函数以及采用XML和HTML模版的工具等。PECL包是对PHP的扩展,它用C语言编写,并不遵守编码规则。目前,所有这一类的代码都是实验性的。要了解有关PEAR功能的更多信息请参考 PEAR在线手册。

假如你有兴趣给PEAR提交代码,你可以加入PEAR开发者邮件列表并且请求大家检查你的代码,从而实现以上目的。不过,你得注意到已经包括在库内的函数并且遵守PEAR的编码规则。

从哪里获取PEAR

PEAR捆绑在PHP发布包内,当你安装PHP的时候也就同时安装了PEAR。假如你打算获得一个稳定的版本,而且你可以在没有最新PEAR版本的情况下也活得下去,那么你可以从php.net的下载网页获得最新的PHP版本。假如你喜爱冒险,希望采用最新版本的PEAR,你可以按照匿名CVS访问的指示用CVS客户程序下载它。

安装了PHP之后PEAR资源就会被放置到~/php/PEAR/ 目录下。你不妨把自己的php目录位置增加到php.ini的include_path参数中来(比如:include_path = ".:/usr/local/lib/php";),这样就可以使用PEAR功能了。

如何使用PEAR

现在所要做的无非是在用到函数和你编写的其他类的地方采用require_once()。清单A中的例子使用了PEAR的电子邮件特性Sendmail。这部分代码例示了PEAR库内的Mail.php文件,该文件是对PEAR.php类的扩展。

接下来,我们设置一些必要的变量,它们是$recipients、$headers和$body,这些变量是所有PEAR Mail函数和$params所需要的。你可以参在线PEAR手册找出这些变量的设置方法。在PEAR代码本身的注释中也蕴涵了很多信息,不过一般而言,网站对你的帮助还是最大的。

最后,示例代码会调用PEAR Mail类。首先,我们用~/php/Mail.php文件中的Mail::factory方法为邮件驱动程序包含适当的类文件,在我们所举的例子里就是Sendmail(位于~/php/Mail/sendmail.php文件内)。接着,我们从PEAR Mail类里实际调用邮件发送函数。当我们对Mail类实例化的时候采用引用(=&)就可以通过引用名$mail_object引用该类了。

假如你想了解PEAR DB函数的用法,你不妨到?Quick Start Guide to Pear DB去看看,它是由Tomas V. V. Cox负责维护的。

为什么使用PEAR

如上所述,PEAR功能部署简单,同时不需要额外的编程。虽然我们可以用PHP的固有函数达到同样的结果,但是,部署PEAR模块可以立即为我们带来错误检查等实际利益,同时还便利了程序的重用。

此外,越来越多的高级应用程序也开始采用PEAR了,而PEAR的代码库也在不断的增长之中。因为PEAR包含在PHP许可权之内,所以你可以免费使用或者修改你选择的函数。还有,你再也不必反复编写令人麻木的认证模块了,这对开发人员来说可是一项具有相当吸引力的好处,而且你还可以享受到定制开发的莫大优点。

好处多多

采用合格的预编写、可重用代码,你就可以显著地加快应用程序的开发周期而不必在技术选择上过分地费脑筋了。PEAR是PHP团体为便利开发者而付出的努力所结出的硕果,它提供了实现优秀应用程序的一整套方法。采用PEAR代码以及为其做出自己的贡献不仅加快了项目交付时间,同时还可以在今天和未来开发出质量更好的应用程序。

TechRepublic是一个专为各类IT专业人士设立的在线社区以及资源中心,我们提供有深度的技术文章,这些文章由IT专家写成,面对IT专家读者。除了提供从Windows到e-mail到防火墙等各种文章以外,我们还提供IT业界分析,下载,管理要点,讨论组以及新闻邮件服务。

使用【阿里云百炼】搭建自己的大模型 本文介绍阿里云百炼大模型平台,其为企业级服务平台,融合通义千问等模型,支持多模态能力,提供一站式工具降低开发门槛。重点讲解智能体应用及大模型搭建步骤,含进入创新应用界面、选模型配参数、输指令、导数据、加载知识库、获取API Key、加样例库、配置MCP,还提及模型调试与多平台发布,并附试用链接,助力企业与开发者快速搭建适配业务的AI模型。 阅读详情

相关推荐

国民技术N32G45X SysTick定时器实战:从1us到100ms的精准延迟实现(附完整代码)

本文详细解析了国民技术N32G45X芯片中SysTick定时器的工作原理,并提供了从1微秒到100毫秒的高精度延迟实现方案。通过对比官方库函数的局限性,文章重点介绍了无中断查询模式、时钟源选择策略以及完整的代码实现,帮助嵌入式开发者精准控制时序,适用于LED控制、软件模拟通信协议等多种实战场景。

weixin_29190573的博客 378

安装/修复pecl

使用pecl命令报错 $ pecl warning require_once 'Console/Getopt.php'; //报错文件地址 ERROR_PATH/pear/System.php 具体的修复步骤 1.使用 go-pear.php /go-pear.phar 安装 pear 1.go-pear.php 使用条件 php_version <= 5.1.6...

又是废柴的一天。。。 822

AES128加密算法开发(含源码)

本文详解了AES128加密算法的原理与C语言实现。AES128是当前广泛使用的对称加密标准,采用128位密钥和10轮变换,具有高安全性和高效性。文章从算法背景、核心概念(混淆与扩散)入手,详细解析了4×4状态矩阵表示、4个核心变换(字节替换、行移位、列混合、轮密钥加)以及密钥扩展过程。特别针对汽车电子应用场景,如ECU通信加密、车钥匙认证等,说明了AES128在资源受限环境中的优势。通过分步图解和原理剖析,帮助开发者深入理解这一加密标准的技术细节与实现方法。

汽车电子软件开发笔记 2918

如何自己安裝和使用 PEAR

如何自己安裝和使用 PEAR 加入時間: 16 Oct 2003 22:29瀏覽次數: 830PEAR作為PHP中規範化和功能強大的武庫,一直以來很受關注,但是一直沒有在實用領域得到重視。究其原因,有文檔的不完整,學習資料不充分,代碼體系比較複雜,還有就是開發者支援力度不足。不過早晚這個武庫都會被給以足夠的重視。如果你現在能夠開始學習,也許可以占得一定的先機。PEA

程序人生 2608

金蝶个版本下载地址,记得保存收藏。

专业版 V10.0 http://downloads.cmcloud.cn/kis/kis_pro/10.0/kiszybV10sp1.rar V11.0 http://downloads.cmcloud.cn/kis/kis_pro/11.0/KISV11Setup.rar V12.0 http://dow...

饺子的博客 2511

Diffusion、VAE与GAN:三大生成模型的原理对比与应用场景解析

本文深入解析了Diffusion、VAE与GAN三大生成模型的核心原理与特性。Diffusion模型通过逆向去噪过程实现高质量图像生成,但计算成本较高;VAE擅长学习概率潜空间,训练稳定但图像偏模糊;GAN通过对抗训练生成锐利图像,但存在模式崩溃风险。文章结合实战场景,为图像生成、修复、超分辨率等任务提供了清晰的模型选择指南。

weixin_29063979的博客 344

PEAR得到程序运行时间

require_once("Benchmark/Timer.php");$String = "";$Timer = new Benchmark_Timer();$Timer->start(); for($i=1;$i {   $String .= $i; }$Timer->setMarker(mark1);$String = ""; for($i=1;$i {   $String .= $i;

caaclxf的专栏 920

Flink CDC 中 StartupOptions 模式详解

Flink CDC 的 StartupOptions 模式用于指定作业启动时从源数据读取数据的起始位置,不同的模式适用于不同的业务场景,可满足多样化的数据处理需求,主要有 Initial 模式、Earliest 模式、Latest 模式、SpecificOffset 模式和 Timestamp 模式。

RodJohnsonDoctor的专栏 849

mac 下安装使用pear/pecl

首先要为大家分享的内容是PECL 和 PEAR 他们之间的不同和相同之处。 PEAR 是“PHP Extension and Application Repository”的缩写,即PHP扩展和应用仓库。   PEAR 将PHP程序开发过程中常用的功能编写成类库,涵盖了页面呈现、数据库访问、文件操作、数据结构、缓存操作、网络协议、WebService 等许多方面,用户可以通过下载这些类库并适当的作一些定制以实现自己需要的功能。避免重复发明“车轮”。PEAR 的出现大大提高了PHP 程序的开发效率和开发质

weicaijiang的专栏 938

【第1章>第5节】SOM自组织映射网络的理论学习与MATLAB仿真

自组织映射网络(Self-Organizing Map,SOM)是一种无监督学习的人工神经网络,由芬兰学者Teuvo Kohonen于1981年提出,也被称为Kohonen网络。它的主要功能是将高维输入数据映射到低维(通常是二维)的离散网格上,同时保持输入数据的拓扑结构,即相邻的输入数据在映射后的网格上也相邻。

FPGA/MATLAB学习教程/源码/项目合作开发 403

Python爬虫实战:美团外卖商家数据抓取与分析

随着互联网技术的快速发展,外卖平台已成为人们日常生活中不可或缺的一部分。本文基于Python爬虫技术,使用最新的异步爬虫框架和反爬虫绕过技术,实现了对美团外卖平台商家信息与评分数据的自动化抓取。通过对抓取数据的清洗、存储和分析,为餐饮行业市场研究和商业决策提供数据支持。本文详细介绍了爬虫的设计思路、技术实现方案、数据处理方法以及可视化分析结果,为相关领域的研究者和开发者提供参考。关键词:Python爬虫;美团外卖;数据抓取;数据分析;异步爬虫。

2201_76125261的博客 1822

PECL 和 PEAR 有什么区别?

  要为大家分享的内容是PECL 和 PEAR 他们之间的不同和相同之处。PEAR 是“PHP Extension and Application Repository”的缩写,即PHP扩展和应用仓库。  PEAR 将PHP程序开发过程中常用的功能编写成类库,涵盖了页面呈现、数据库访问、文件操作、数据结构、缓存操作、网络协议、WebService 等许多方面,用户可以通过下载这些类库并适当的作一些...

qq_34501154的博客 261

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

php 什么是PEAR?

 什么是PEAR?(第一篇)第一章 爱好PHP者必喜欢PEARPHP爱好者必喜欢PEAR,我们的目的就是希望将PEAR介绍给PHP的程式开发人员,我个人认为引用程式库的程式开发方式已经渐渐成为趋势了,除了php、JSP外,像perl、C++也都有专属的程式库供其开发人员引用。借着引入PEAR,php的程式开发者除了可以大幅缩減撰写程式码的工作与时间外,还可以用很简单的方式得到许多強大的动态

python二级题库 1246

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

PHP程序加速探索[8]--内容缓存输出 PEAR cache

◆ 内容缓存输出 PEAR cache接下来我们开始探索更常用的缓存技术,这也是本文的重点部份。首先我们使用PEAR中的cache包。PEAR可以将内容缓存于文件,数据库或者内存中,我们以文件为例。下面是一个没有使用缓存的PHP小程序:pear_content_cache1.phpecho "这是内容。"; echo "当前时间是" . date(M-d-Y H:i:s A,

Haohappy的专栏 6342

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

PHP内容缓存输出 PEAR cache

PHP内容缓存输出 PEAR cache作者:未知PEAR cache 安装/usr/ports/sysutils/pear-Cachemake install clean◆ 内容缓存输出 PEAR cache接下来我们开始探索更常用的缓存技术,这也是本文的重点部份。首先我们使用PEAR中的cache包。PEAR可以将内容缓存于文件,数据库或者内存中,我们以文件为例。 下面是一

cqinter的专栏 2097

PHP程序加速探索[9]--加速--函数缓存输出 PEAR cache

◆ 函数缓存输出 PEAR cache PEAR除了可以对输出的内容进行缓存处理外,还可以将对某个函数的调用结果缓存起来。这是个很有趣的功能,如果你的程序要频繁使用到某个函数,而且调用的结果相同的话,我建议你不妨试试,特别是当这个函数运行起来比较慢的时候。下面我们实现对一个执行起来很慢的函数slowFunction()的缓冲调用。require_once Cache/Functi

Haohappy的专栏 3333

php脚本怎么加速执行,PHP程序加速探索之脚本执行速度测试_php

前面有提到,只有找到影响速度的代码,我们才有可能进行优化。PEAR的benchmark包中的Benchmark_Timer类和Benchmark_Iterate类,可以用来很方便地测试脚本执行的速度。(关于PEAR的安装与配置请自行查看相关资料) 。首先用Benchmark_Iterate类来测试程序中某个函数或类的某个方法的执行时间。benchmark1.phphttp://www.gaodai...

weixin_36163672的博客 346

CTF实战:利用PEAR绕过preg_match的文件包含漏洞解析

文件包含漏洞是Web安全中常见的高危漏洞,其原理在于应用程序未对用户输入进行严格校验,直接将可控参数传递给include、require等文件包含函数,导致攻击者可能读取敏感文件或执行任意代码。在PHP环境中,结合正则过滤(如preg_match)可增加攻击难度,但通过深入理解PHP的include路径搜索机制与特定组件(如PEAR)的默认行为,攻击者仍可构造巧妙的利用链。本文以一次CTF实战为例,详细剖析了如何利用PEAR/Config.php这一合法组件,通过路径穿越与查询字符串拼接,绕过对“flag”

weixin_30321449的博客 462

PHP 程序加速探索

Haohappy 2004-07-27haohappy@msn.com - (一)简介- (二)是否需要加速?- (三)如何加速?    - 测试        ◆ 服务器负载测试 ApacheBench        ◆ 脚本执行速度测试 PEAR:: Benchmark    - 加速        ◆ 代码优化       ◆ 压缩输出 Gzip       ◆ 内容缓存输出 PEAR Co

PHP - 高屋建瓴 2286

PHP解决数学的游戏问题,了解PHP处理复杂数学问题的10个PEAR类

如果你具有数学知识背景,你可能已经意识到PHP中并不具备处理高等数学概念——复杂数字、分数、多项式、统计数据和矩阵——的特殊函数。但是,这种缺陷可以由PEAR,PHP扩展和应用库来填补,它提供大量处理复杂数学单位的现成数据包。这些数据包为应用程序开发者提供一个稳健、经过良好测试的代码库,同时帮助你节省构造出你自己的数学算法所需的时间和精力。本文列出开发者在其项目中处理复杂数学问题时特别感兴趣的10...

weixin_29169899的博客 177

php加速国外网站,让网站飞起来,PHP 程序加速探索

(一)简介  本文尝试对PHP程序加速的各个方面进行探索,包括必要性以及从不同角度采取的具体措施。希望有助于读者了解PHP程序加速,并应用于实际。(二)是否需要加速?这个问题听起来有点愚蠢。在这个时代,很少有人会怀疑时间是最宝贵的财富,尤其是在商业市场上。程序执行越快,用户就节约越多的时间,这样你的程序就可以用更少的时间和资源为用户服务,从而产生更多效益。我想对于大部份人(包括我自己)来说,很多W...

weixin_39762478的博客 207
上一篇: Pear DB 新手入门指南(中译 by Chagel)
下一篇: Dev-Cpp/Mingw32 环境介绍(1)
cfyy
博客等级 码龄22年 0粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值