Home >Backend Development >PHP Tutorial >PHP网站开发必备24个类库

PHP网站开发必备24个类库

WBOY
WBOYOriginal
2016-06-20 13:04:222296browse

作为一个PHP网站开发者在学会自己实现功能类库的同时,参考使用别人的类库,是一个很好的学习过程。在 Github上很容易发现和使用这些PHP类库。下面是收集的最酷的24个库!

1. Dispatch – 微框架

Dispatch是一个PHP小框架。它并没有给你完整的MVC设置,但你可以定义URL规则和方法,以便更好组织应用程序。这对API、简单的站点或原型来说是完美的。

项目地址:https://github.com/noodlehaus/dispatch

2. Klein – PHP快如闪电的路

由Klein是另一款针对PHP5.3+版本的轻量级路由库。虽然它有一些比Dispatch冗长的语法,但它相当快。对于小型项目来说这是很棒的,但当你把一个像这样的库用于大型应用时,你不得不遵守规矩,因为你的代码可能很快就变得不可维护。所以你最好搭配一个像Laravel或者CodeIgniter这样完全成熟的框架。

项目地址:https://github.com/chriso/klein.php

3. Ham – 带缓存的路由库

Ham也是一款轻量级的路由框架,但是它利用缓存甚至获得了更快的速度。它通过把任何I/O相关的东西缓存进XCache/APC。这个库要求你至少安装了XCache和APC其中的一个,这可能意味着,在大多数主机提供商提供的主机上它可能用不了。但是如果你拥有一个安装它们其一的主机,或者你可以操控你的web服务器,你应该尝试这款最快的框架。

项目地址:https://github.com/radiosilence/Ham

4. Assetic – 资源管理

Assetic是一个PHP的资源管理框架,用于合并和减小了CSS/JS资源。以这种方式合并资源是一个好主意,因为它可以加速站点。不仅仅总下载量减小了,也消除了大量不必要的HTTP请求(这是最影响页面加载时间的两件事)

项目地址:https://github.com/kriswallsmith/assetic

5. ImageWorkshop – 带层的图片处理

ImageWorkshop是一个让你操控带层图片的开源库。借助它你可以重定义尺寸、裁剪、制作缩略图、打水印或做更多事情。ImageWorkshop被开发用于使一些PHP中最通用的处理图片的案例简化,如果你需要一些更强大的东西,你应该看下Imagine library!

项目地址:http://phpimageworkshop.com/

6. Snappy – 快照/PDF库

Snappy是一个PHP5库,可以生成快照、URL、HTML、PDF。它依赖于wkhtmltopdf binary(在Linux,Windows和OSX上都可用)。.要记得,你的主机提供商可能不允许调用外部二进制程序。

项目地址:https://github.com/KnpLabs/snappy

7. Idiorm – 轻量级ORM库

Idiorm是个人之前在本网站教程中用过最喜爱的一款。它是一款轻量级的ORM库,一个建立在PDO之上的PHP5查询构造器。借助它,你可以忘记如何书写乏味的SQL,Idiorm有一个姊妹库叫Paris,Paris是一个基于Idiorm的Active Record实现。

项目地址:https://github.com/j4mie/idiorm

8. Underscore – PHP的工具腰带

Underscore是原始Underscore.js的一个接口 – Javascript应用的工具腰带。PHP版本没有让人失望,而且支持了几乎所有原生功能。这个库也支持链式语法,这使得它更为强大

项目地址:http://brianhaveri.github.io/Underscore.php/

9. Requests – 简单HTTP请求

Requests是一个简化HTTP请求的库。如果你和我一样,几乎从来都记不住传递给Curl的各种各样的参数,借助这个库,你可以发送HEAD、GET、POST、PUT、DELTE和PATCH HTTP请求,你可以通过数组添加文件和参数,并且可以访问所有相应数据。

项目地址:http://requests.ryanmccue.info/

10. Buzz – 简单的HTTP请求库

Buzz是另一个完成HTTP请求的库。因为它缺乏文档,所以你不得不阅读源码来获知它支持的所有参数。

项目地址:https://github.com/kriswallsmith/Buzz

11. Goutte – Web抓取库

Goutte是一个抓取网站和提取数据的库。它提供了一个优雅的API,这使得从远程页面上选择特定元素变得简单。

项目地址:https://github.com/fabpot/Goutte

12. Carbon – DateTime 库

Carbon 是 DateTime API 的一个简单扩展。

项目地址:https://github.com/briannesbitt/Carbon

13. Ubench – 微型基准库

Ubench 是一个用于评测PHP代码的微型库,可监控(代码)执行时间和内存使用率。(仅)在开发时运行这些校验是一个好主意。

项目地址:https://github.com/devster/ubench

14. Validation – 输入验证引擎

Validation 声称是PHP库里最强大的验证引擎。但是,它能名副其实吗?

这个库验证你的表单或其他用户提交的数据。除此之外,它内置了很多校验,抛出异常和定制错误信息。

项目地址:https://github.com/Respect/Validation

15. Filterus – 过滤库

Filterus是另一个过滤库,但它不仅仅可以验证,也可以过滤匹配预设模式的输出。

Filterus有很多内建模式,支持链式用法,甚至可以用独立的验证规则去验证数组元素。

项目地址:https://github.com/ircmaxell/filterus

16. Faker – 假数据生成器

Faker 是一个为你生成假数据的PHP库。当你需要填充一个测试数据库,或为你的web应用生成测试数据时,它能派上用场。

只要你继续访问对象属性,它将继续返回随机生成的数据。

项目地址:https://github.com/fzaninotto/Faker

17. Mustache.php – 优雅模板库

Mustache是一款流行的模板语言,实际已经在各种编程语言中得到实现。使用它,你可以在客户端或服务段重用模板。 

项目地址:https://github.com/bobthecow/mustache.php

18. Gaufrette – 文件系统抽象层

Gaufrette是一个PHP5库,提供了一个文件系统的抽象层。它使得以相同方式操控本地文件,FTP服务器,亚马逊 S3或更多操作变为可能。它允许你开发程序时,不用了解未来你将怎么访问你的文件。

也有缓存和内存适配器,并且随后将会增加更多适配器。

项目地址:https://github.com/KnpLabs/Gaufrette

19. Omnipay – 支付处理库

Omnipay是一个PHP支付处理库。它有一个清晰一致的API,并且支持数十个网关。使用这个库,你仅仅需要学习一个API和处理各种各样的支付处理器。

使用相同一致的API,可以很容易地支持多种支付处理器,或在需要时进行切换。

项目地址:https://github.com/thephpleague/omnipay

20. Upload – 处理文件上传

Upload是一个简化文件上传和验证的库。上传表单时,这个库会校验文件类型和尺寸。

项目地址:https://github.com/codeguy/Upload

21. HTMLPurifier – HTML XSS 防护

HTMLPurifier是一个HTML过滤库,通过强大的白名单和聚集分析,保护你代码远离XSS攻击。它也确保输出标记符合标准。

项目地址:http://htmlpurifier.org/

22. ColorJizz-PHP – 颜色操控库

ColorJizz是一个简单的库,借助它你可以转换不同的颜色格式,并且做简单的颜色运算

它已经支持并且可以操控所有主流颜色格式了

项目地址:https://github.com/mikeemoo/ColorJizz-PHP

23. PHP Geo – 地理位置定位库

phpgeo是一个简单的库,用于计算地理坐标之间高精度距离。

项目地址:https://github.com/mjaschen/phpgeo

24. ShellWrap – 优美的命令行包装器

借助 ShellWrap 库,你可以在PHP代码里使用强大的 Linux/Unix 命令行工具。

当命令行里发生异常时,这个库抛出异常,所以你可以及时对之做出反应。它也可以通过管道让你一个命令的输出作为另一个命令的输入,来实现更强的灵活性。

项目地址:https://github.com/MrRio/shellwrap


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn