各种有用的PHP开源库精心收集
转自:http://my.oschina.net/caroltc/blog/324024
摘要 各种有用的PHP开源库精心收集,包含图片处理,pdf生成,网络协议,网络请求,全文索引,高性能搜索,爬虫等等,项目肯定用得上的
目录[-]
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做消息队列,不妨试试看。
持续更新...
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。