首页 > 代码库 > 各种有用的PHP开源库精心收集

各种有用的PHP开源库精心收集

转自:http://my.oschina.net/caroltc/blog/324024

摘要 各种有用的PHP开源库精心收集,包含图片处理,pdf生成,网络协议,网络请求,全文索引,高性能搜索,爬虫等等,项目肯定用得上的

PHP PHP开源库

 

目录[-]

  • Swoole:重新定义PHP

1.html2ps and html2pdf    下载地址: http://www.tufat.com/script19.htm

html2ps能够把带有图片,复杂表格(包含rowspan/colspan) ,layer/div和css样式的HTML转换成Postscript与PDF。html2ps对CSS2.1支持非常好,并且很好地兼容不正确的HMTL。

2.Sphider  下载地址: http://www.sphider.eu/download.php

 Sphider是一个轻量级,采用PHP开发的web spider和搜索引擎,使用mysql来存储数据。可以利用它来为自己的网站添加搜索功能。Sphider非常小,易于安装和修改,已经有数千网站在使用它。

3.Sphinx 下载地址: http://sphinxsearch.com/

Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。

4.PHPLiveX  下载地址: http://www.phplivex.com/

PHPLiveX是一个PHP类库可用于在web页面中使用Ajax调用PHP函数。它非常易于使用,在调用一个PHP函数不需要附加额外的功能,包含一个灵活地预加载属性,兼容IE, Opera, Mozilla, Firefox等浏览器。

5.txtSql 下载地址:http://sourceforge.net/projects/txtsql/

TXTSQL是一种文本数据库,文件存储方式类似mysql,兼容部分sql语句.PHP需4.0以上版本才能运行。还提供一个txtSQLAdmin工具来管理数据库。

6.Hessian 下载地址:http://www.cnblogs.com/wubaiqing/archive/2012/05/09/2491893.html

 Hessian是由caucho提供的一种开源的远程通讯协议。

  采用二进制 RPC 协议,基于 HTTP 传输,服务器端不用另开放防火墙端口。

  协议的规范是公开的,可以用于任意语言。

  采用客户机/服务器模式。

  请求程序就是一个客户机,而服务提供程序就是一个服务器。

  客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。

  在服务器端,进程保持睡眠状态直到调用信息的到达为止。

  当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,

  获得进程结果,然后调用执行继续进行。

7.swoole 下载地址:http://www.swoole.com/  【这个库相当强大,已经在项目中使用了】

Swoole:重新定义PHP

 PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。

8.Requests  下载地址:http://requests.ryanmccue.info/

Requests提供了一致的API,并且使用cURL或fsockopen(具体取决于可用性),它还简化了发送请求,接受HEAD、GET、POST、PUT、DELETE或PATCH并且添加标头、表单数据和多个部分组成的文件。

9.pthreads  下载地址: http://php.net/manual/zh/book.pthreads.php#book.pthreads

pthreads 是一组允许用户在 PHP 中使用多线程技术的面向对象的 API。 它提供了创建多线程应用所需的全套工具,无论是 Web 应用还是控制台应用。 通过使用 Thread, Worker 以及 Threaded 对象,PHP 应用可以创建、读取、写入以及执行多线程应用,并可以在多个线程之间进行同步控制。

10.bcompiler 下载地址:http://php.net/manual/zh/book.bcompiler.php

这个拓展主要用来编译和加密PHP文件,官方说目前还是实验版,持续关注中。

在仅使用未压缩过的字节码时,bcompiler 能够提高约 30% 的性能。 但是请留意未压缩过的字节码可能比源码大5倍 使用字节码压缩可以节省您的磁盘空间,但解压需要比解析源码花费更多时间。 同时 bcompiler 没有对字节码做任何优化,这功能会在将来添加……

在代码保护方面,有把握地讲,不可能重新创建确切的原始代码,并且没有附加的源码注释。 它将有效得阻止了重建和修改一个类。但是它可以从 bcompile 过的字节码中取出数据 ——所以不要把你私人密码或者其他任何类似东西放在里面。

11.SCWS  下载地址: http://www.xunsearch.com/scws/  【这个在很多开源和商业项目中都有使用】

SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。

这是一套基于词频词典的机械式中文分词引擎,它能将一整段的中文文本基本正确地切分成词。 词是中文的最小语素单位,但在书写时并不像英语会在词之间用空格分开, 所以如何准确并快速分词一直是中文分词的攻关难点。

SCWS 采用纯 C 语言开发,不依赖任何外部库函数,可直接使用动态链接库嵌入应用程序, 支持的中文编码包括 GBK、UTF-8 等。此外还提供了 PHP 扩展模块, 可在 PHP 中快速而方便地使用分词功能。

12.PHPCrawl 下载地址: http://phpcrawl.cuab.de/  

 这个是PHP的爬虫框架,看起来很可口,使用起来也很简单(不要被英文吓到)。如果有少量的爬虫任务,不如让它试试身手,有时间我写个中文版的使用指南。

13.ffmpeg-php 下载地址: http://sourceforge.net/projects/ffmpeg-php/

ffmpeg-php提供一组易于使用,面向对象的API来访问和读取视频和音频文件中的信息。它包含能够从电影文件中获取画面来作为图片的方法。这个功能非常适合于从电影文件自动创建缩略图。ffmpeg-php对于读取音频文件(mp3,wma...)的播放时间和速度等信息也非常好用的。ffmpeg-php支持很多种视频格式包括:mov,avi,mpg,wmv等等。

14.yar 下载地址:https://github.com/laruence/yar

Yar (yet another RPC framework) 是一个PHP扩展的RPC框架, 和现有的RPC框架(xml-rpc, soap)不同, 这是一个轻量级的框架, 支持多种打包协议(msgpack, json, php), 并且最重要的一个特点是, 它是可并行化的。

15.phpFastCache 下载地址: http://www.phpfastcache.com/

phpFastCache 是一个开源的 PHP 缓存库,只提供一个简单的 PHP 文件,可方便集成到已有项目,支持多种缓存方法,包括:apc, memcache, memcached, wincache, files, pdo and mpdo。可通过简单的 API 来定义缓存的有效时间。

16.Slim  下载地址: http://www.slimframework.com/ 

Slim是一个PHP微框架,帮助您快速编写简单但功能强大的web应用程序和api。可以用来开发APP的webservice,而不需要用那些太过于臃肿的框架。

17.Guzzle  下载地址: http://docs.guzzlephp.org/en/latest/index.html

Guzzle 是个 PHP 框架,解决了发送大量 HTTP 请求和创建 web 服务客户端的问题。它包括了创建坚实服务客户端的工具,包括:服务描述来定义 API 的输入和输出,通过分页资源实现资源迭代,尽可能高效的批量发送大量的请求。

18.ZeroMQ  下载地址: http://zeromq.org/bindings:php

ZMQ (以下 ZeroMQ 简称 ZMQ)是一个简单好用的传输层,像框架一样的一个 socket library,他使得 Socket 编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。当然,ZMQ的功能强大不止这么简单,如果你在考虑用PHP做消息队列,不妨试试看。

持续更新...

各种有用的PHP开源库精心收集