Transferred from: http://my.oschina.net/caroltc/blog/324024
Abstract a variety of useful PHP open Source Library carefully collected, including image processing, PDF generation, network protocols, network requests, full-text indexing, high-performance search, crawler, etc., the project must be used
PHP PHP Open Source Library
Catalogue [-]
1.html2ps and html2pdf : http://www.tufat.com/script19.htm
HTML2PS can convert HTML with images, complex tables (including Rowspan/colspan), Layer/div and CSS styles into PostScript and PDF. HTML2PS support for CSS2.1 is very good and is well compatible with incorrect HMTL.
2.Sphider : http://www.sphider.eu/download.php
Sphider is a lightweight, PHP-developed web spider and search engine that uses MySQL to store data. You can use it to add search functionality to your site. Sphider is very small, easy to install and modify, there are already thousands of sites in use it.
3.Sphinx : http://sphinxsearch.com/
Sphinx is an SQL-based full-text search engine that can be combined with mysql,postgresql for full-text searching, which provides a more specialized search function than the database itself, making it easier for applications to implement specialized full-text searches.
4.PHPLiveX : http://www.phplivex.com/
Phplivex is a PHP class library that can be used to invoke PHP functions in Web pages using AJAX. It is very easy to use, and in calling a PHP function does not require additional functionality, including a flexible preload property compatible with IE, Opera, Mozilla, Firefox and other browsers.
5.txtSql : http://sourceforge.net/projects/txtsql/
txtSQL is a text database that is stored in a way similar to MySQL and is compatible with some SQL statements. PHP requires more than 4.0 versions to run. A txtsqladmin tool is also provided to manage the database.
6.Hessian : http://www.cnblogs.com/wubaiqing/archive/2012/05/09/2491893.html
Hessian is an open source remote communication protocol provided by Caucho.
The use of the binary RPC protocol, based on the HTTP transmission, the server side does not have to open the firewall port.
The specification of the Protocol is public and can be used in any language.
Use client/server mode.
The requestor is a client, and the service provider is a server.
The client call process sends a call message with process parameters to the service process, and then waits for the reply message.
On the server side, the process stays asleep until the call information arrives.
When a call arrives, the server obtains the process parameters, evaluates the result, sends a reply message, and then waits for the next call message, and finally, the client invokes the process to receive the reply message,
Gets the result of the process and then calls execution to proceed.
7.swoole : http://www.swoole.com/"This library is quite powerful and has been used in the project."
Swoole: Redefining PHP
The PHP language's high-performance network communication Framework provides the PHP language for asynchronous multi-threaded servers, asynchronous TCP/UDP network clients, asynchronous MySQL, database connection pooling, Asynctask, Message Queuing, millisecond timers, asynchronous file read and write, asynchronous DNS queries.
8.Requests : http://requests.ryanmccue.info/
Requests provides a consistent API and uses Curl or fsockopen (depending on availability), it also simplifies sending requests, accepting head, GET, POST, PUT, delete, or patch and adding headers, form data, and multiple-part files.
9.pthreads : http://php.net/manual/zh/book.pthreads.php#book.pthreads
Pthreads is a set of object-oriented APIs that allow users to use multithreaded technology in PHP. It provides the complete set of tools you need to create multithreaded applications, whether it's a Web app or a console app. By using thread, Worker, and threaded objects, PHP applications can create, read, write, and execute multithreaded applications, and can synchronize control across multiple threads.
10.bcompiler : http://php.net/manual/zh/book.bcompiler.php
This extension is mainly used to compile and encrypt PHP files, the official said the current experimental version, continued attention.
Bcompiler can improve performance by about 30% when using only uncompressed bytecode. But keep in mind that uncompressed bytecode may be 5 times times larger than the source code. Using bytecode compression can save your disk space, but it takes more time to decompress than to parse the source. At the same time Bcompiler does not do any optimization of bytecode, this feature will be added in the future ...
In terms of code protection, it is safe to say that it is not possible to recreate the exact original code, and there are no additional source comments. It will effectively prevent the rebuilding and modification of a class. But it can take data out of bcompile bytecode-so don't put your personal password or anything like that.
11.SCWS : http://www.xunsearch.com/scws/"This is used in many open source and commercial projects."
SCWS is the acronym for Simple Chinese Word segmentation (ie: Simplified Chinese word breaker).
This is a set of word frequency dictionary based mechanical Chinese word breaker, it can be a whole paragraph of the Chinese text is basically correctly cut into words. The word is the smallest morpheme unit in Chinese, but in writing it is not like English will be separated by a space between the words, so how accurate and fast participle has been the key to the Chinese word segmentation difficult.
SCWS uses the pure C language development, does not rely on any external library function, can directly use the dynamic link library to embed the application, the support Chinese code includes GBK, UTF-8 and so on. In addition, PHP extensions are available to quickly and easily use word breakers in PHP.
12.PHPCrawl : http://phpcrawl.cuab.de/
This is the PHP crawler frame, it looks delicious, it is very simple to use (not to be frightened by English). If there are a small number of crawler tasks, it is better to let it try the skill, there is time for me to write a Chinese version of the use of the guide.
13.ffmpeg-php : http://sourceforge.net/projects/ffmpeg-php/
Ffmpeg-php provides a set of easy-to-use, object-oriented APIs to access and read information in video and audio files. It contains a way to get pictures from a movie file as a picture. This feature is ideal for automatically creating thumbnails from movie files. ffmpeg-php for reading audio files (mp3,wma ...) The playback time and speed of the information is also very useful. Ffmpeg-php supports a wide range of video formats including: Mov,avi,mpg,wmv and more.
14.yar : Https://github.com/laruence/yar
The Yar (yet another RPC framework) is a PHP-extended RPC frame that differs from the existing RPC framework (XML-RPC, SOAP), which is a lightweight framework that supports a variety of packaging protocols (Msgpack, JSON, PHP), and the heaviest A feature of this is that it can be parallelized.
15.phpFastCache : http://www.phpfastcache.com/
Phpfastcache is an open source PHP cache library that provides a simple PHP file that can be easily integrated into existing projects and supports multiple caching methods including: APC, Memcache, memcached, Wincache, files, PDO and Mpdo 。 A simple API can be used to define the effective time of the cache.
16.Slim : http://www.slimframework.com/
Slim is a PHP micro-framework that helps you quickly write simple but powerful Web applications and APIs. WebService that can be used to develop apps without the need for overly bloated frameworks.
17.Guzzle : http://docs.guzzlephp.org/en/latest/index.html
Guzzle is a PHP framework that addresses the issue of sending a large number of HTTP requests and creating Web service clients. It includes tools to create a solid service client, including a service description to define the input and output of the API, a resource iteration through paging resources, and a high volume of requests as efficiently as possible.
18.ZeroMQ : http://zeromq.org/bindings:php
ZMQ (hereinafter referred to as ZMQ) is a simple and easy to use transport layer, like the framework of a socket library, he makes socket programming simpler, more concise and higher performance. is a message processing queue library that can elastically scale across multiple threads, cores, and host boxes. Of course, ZMQ is more powerful than that, so if you're thinking about using PHP as a message queue, try it.
Continuous update ...
A variety of useful PHP open source libraries are carefully collected