你应该知道的PHP库
- Libchart – 这也是一个简单的统计图库。
- JpGraph – 一个面向对象的图片创建类。
- Open Flash Chart – 这是一个基于Flash的统计图。
RSS 解析
解释RSS并是一件很单调的事情,不过幸好你有下面的类库可以帮助你方便地读取RSS的Feed。
缩略图生成
- phpThumb – 功能很强大,如何强大还是自己去体会吧。
支付
你的网站需要处理支付方面的事情?需要一个和支付网关的程序?下面这个程序可以帮到你。
- PHP Payment Library – 支持Paypal, Authorize.net 和2Checkout (2CO)
OpenID
- PHP-OpenID – 支持OpenID的一个PHP库。OpenID是帮助你使用相同的用户名和口令登录不同的网站的一种解决方案。如果你对OpenID不熟悉的话,你可以到这里看看:http://openid.net.cn/
数据为抽象/对象关系映射ORM
- ADOdb – 数据库抽象
- Doctrine – 对象关系映射Object relational mapper (ORM) ,需要 PHP 5.2.3+ 版本,一个非常强大的database abstraction layer (DBAL).
- Propel – 对象关系映射框架- PHP5
- Outlet – 也是关于对象关系映射的一个工具。
注:对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。 这也同时暗示者额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。 更重要的是用于控制转换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少;而且就算是遵守ODMG规范的对象数据库依然需要类级别的元数据。
PDF 生成器
- FPDF – 这量一个可以让你生成PDF的纯PHP类库。
Excel 相关
你的站点需要生成Excel?没有问题,下面这两个类库可以让你轻松做到这一点。
- php-excel – 这是一个非常简单的Excel文件生成类。
- PHP Excel Reader – 可以解析并读取XLS文件中的数据。
E-Mail 相关
不喜欢PHP的mail函数?觉得不够强大?下面的PHP邮件相关的库绝对不会让你失望。
- SimpleTest – 一个PHP的单元测试和网页测试的框架。
- PHPUnit – 来自xUnit 家族,提供一个框架可以让你方便地进行单元测试的案例开发。并可非常容易地分析其测试结果
9个强大免费的PHP库
1. ReCAPTCHA
reCAPTCHA 允许你的网站集成一个Advanced CAPTCHA 系统,这个系统可以帮助你阻止一些垃圾信息。可视化的CAPTCHA 同样也有一个有用的声音功能。另外,在reCAPTCHA 服务里,这个PHP库也包含了一个给 “Mailhide” 服务用的API,这个可以把你的邮件地址隐藏于一些抓邮件地址的程序。
这个API是免费并且非常容易使用的,你需要做的就是申请一个API的KEY。

下载 ReCAPTCHA | 获取一个API Key | 相关文档
2. Akismet
Akismet 是一个免费的服务项目,对于一些小型的网站它是完全免费的,对于一些大型的网址,他是部分免费的。这个库也是提供了处理一些和垃圾信息相关的功能。它主要通过比对自己数据库中已存在的被认定为垃圾的信息,而做出决定的。当然,数据库中的垃圾信息可能通过各个网站举报,大家供享的。这是一个每天都在更新,每天都在改进的库。许多许多的WordPress都装有这个库。

3. Services_JSON
JSON 是一个非常小巧敏捷的PHP库,它主要用于把一些数据格式转成易于人们阅读的格式。并不是所有的人都会喜欢PHP5 (因为自PHP5.20后其中已经集成了JSON),所以,这个小PHP库可以在低版本的PHP中让你得到 JSON 的功能。

4. Smarty
Smarty 是一个网面模板引擎,它主要是把程序和界面分开。Smarty 提供了许多强大的功能,比如循环,变量,以及一个强大的缓存系统。这个库不是一个新库了,其已经发展了很多年了,虽然只有3个release版,但应该是比较成熟了。

5. pChart
这是一个强大的画统计图的PHP库,像一些饼图或是柱状图,pChart 还允许你通过SQL查询语句或是手动的输入数据来创建一个统计图。当然它需要GD库的支持以便创建图片。这个库一看就是有很多非常专业的美工设计过,因为它可以让你的统计图显示的相当漂亮。

6. SimplePie
SimplePie 允许你可以容易地 pull 一些信息,比如RSS feeds。它同样可以被集成于不同的平台和语言。并且可以通过很多不同的方法来处理远端的feed。

下载 SimplePie | 相关文档 | Extending SimplePie to Parse Unique RSS Feeds
7. XML-RPC PHP
我们的应用程序有时需要一些类似于 “ping” 的功能去探测一下其它站点,如BLOG的 trackbacks。一般来说,这都是通过一个叫做XML-RPC的协议来完成的。XML-RPC PHP 库可以让你的站点集成这些功能。

8. Amazon S3
Amazon 提供了一个“云服务”叫”S3″. 这个PHP库可以让你不需要第三方的插件就可以上传大的文件。

9. PHPMailer
很多应用都需要对外发送邮件,但是PHP的mail() 函数并不是特别好用。于是 PHPMailer 应运而生,这是一个功能强大的类,其允许你发送不同格式的邮件,并支持附件和自定义邮件头。

你应该知道的PHP库的更多相关文章
- 20 你应该知道的PHP库
下面是一些非常有用的PHP类库,相信一定可以为你的WEB开发提供更好和更为快速的方法. 图表库 下面的类库可以让你很简的创建复杂的图表和图片.当然,它们需要GD库的支持. pChart – 一个可以创 ...
- 理工科应该的知道的C/C++数学计算库(转)
理工科应该的知道的C/C++数学计算库(转) 作为理工科学生,想必有限元分析.数值计算.三维建模.信号处理.性能分析.仿真分析...这些或多或少与我们常用的软件息息相关,假如有一天你只需要这些大型软件 ...
- PHP程序员应该知道的15个库
最几年,PHP已经成为最受欢迎的一种有效服务器端编程语言.据2013年发布的一份调查报告显示,PHP语言已经被安装在全球超过2.4亿个网站以及210万台Web服务器之上.PHP代表超文本预处理器,它主 ...
- 每个极客都应该知道的Linux技巧
每个极客都应该知道的Linux技巧 2014/03/07 | 分类: IT技术 | 0 条评论 | 标签: LINUX 分享到:18 本文由 伯乐在线 - 欣仔 翻译自 TuxRadar Linux. ...
- react.js 你应知道的9件事
React.js 初学者应该知道的 9 件事 本文假定你已经有了一下基本的概念.如果你不熟悉 component.props 或者 state 这些名词,你最好先去阅读下官方起步和手册.下面的代码 ...
- ButterKnife你需要知道的点
ButterKnife,这个方便findViewById而使用的库,无数的应用在使用它,以注解来实现的他,对应用的性能影响几乎可以忽略,可以放心使用. 使用: compile 'com.jakewha ...
- 嵌入式程序员应知道的0x10个基本问题
来源:网络 嵌入式程序员应知道的0x10个基本问题 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 ...
- C#开发人员应该知道的13件事情
本文讲述了C#开发人员应该了解到的13件事情,希望对C#开发人员有所帮助. 1. 开发过程 开发过程是错误和缺陷开始的地方.使用工具可以帮助你在发布之后,解决掉一些问题. 编码标准 遵照编码标准可以编 ...
- 隔壁小孩都要知道的Drupal配置
i春秋作家:Arizona 原文来自:隔壁小孩都要知道的Drupal配置 隔壁小孩都要知道的Drupal配置 Drupal是一个开源的PHP内容管理系统,具有相当复杂的架构.它还具有强大的安全模型.感 ...
随机推荐
- mysql 5.7设置密码无效
我现在MySQL的版本时8.0.12,以前一直没有给MySQL设置密码. 今天因为需要,给MySQL设置,密码,但是上网搜了好久.....命令都不对.最后搜到csdn的Bpazy大佬的博客.他使用5. ...
- java 数组基础学习(一维二维数组)
1.一维数组 1>静态初始化:数据类型[ ] 变量名 = {元素} 例:int[ ] arr = {1,2} 动态初始化:数据类型[ ] 变量名 = new数据类型[数据长度] 例:int[ ] ...
- 可编辑div中包含子元素时获取光标位置不准确的问题
前言: 高亮显示输入框中的关键字符,这就必须得用到可编辑div(或其他标签)元素了,这时我们需要获取光标的位置,以便插入字符. 正文: 正常情况下获取光标位置,代码如下: function getPo ...
- WebSocket 客户端实例
Node.js var ws = require("ws"); var socket = new ws("ws://127.0.0.1:8001); var socket ...
- usb驱动之打印usb设备信息(二)
以下是打印鼠标左右键及其他输入的源代码,详细说明见https://www.cnblogs.com/zhu-g5may/p/9309381.html /*参考/drivers/hid/usbhid/us ...
- ruby 生成随机字符串
rand(36 ** n).to_s(36) n 等于任意数字
- go语言的指针
什么是指针 一个指针变量指向了一个值的内存地址.(也就是我们声明了一个指针之后,可以像变量赋值一样,把一个值的内存地址放入到指针当中.) 类似于变量和常量,在使用指针前你需要声明指针.指针声明格式如下 ...
- http缓存机制与原理
一.浏览器缓存分类:强制缓存和协商缓存 二.浏览器加载一个页面的简单流程 浏览器第一次请求 浏览器再次请求页面 三.http缓存涉及到的相关术语 缓存命中率:从缓存中得到数据的请求数与所有请求数的比率 ...
- Postgresql HStore 插件试用小结
一, 安装 环境介绍:官方说postgresql 9.3 版本之后支持HStore 插件,目前最新版本10.3 本次测试版本:10.1 或 9.6.2 进入psql 运行环境,使用管理员(高级 ...
- 20155216 实验一《Java开发环境的熟悉》实验报告
实验内容 1.使用JDK编译.运行简单的Java程序. 2.使用idea 编辑.编译.运行.调试Java程序. 3.实现四则运算,并进行测试. 4.实现带有"()"的"+ ...