Login   Register  
PHP Classes
elePHPant
Icontem

PHP Multiplexed I/O

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Robert Young  >  PHP Multiplexed I/O  >  Download .tar.gz .zip  >  Support forum Support forum  >  Blog Blog  >  RSS 1.0 feed RSS 2.0 feed Latest changes  
Name: PHP Multiplexed I/O
Base name: phpmio
Description: Manage multiple simultaneous network connections
Related classes: , , , , , ,
Version: 0.1
PHP version: 5.2
License: BSD License
All time users: 1008 users
All time rank: 3012
Week users: 1 user
Week rank: 2419
 

  Author  
Picture of Robert Young
Name: Robert Young <e-mail contact>
Packages: 2 Browse all classes by Robert Young Browse all classes by
Country: United Kingdom United Kingdom - PHP jobs in United Kingdom
Age: 31
All time rank: 165573 in United Kingdom United Kingdom
Week rank: 1226 Up58 in United Kingdom United Kingdom Up
Innovation award
Innovation award
Nominee: 2x


  Detailed description  
This package can be used to manage multiple simultaneous network connections or file accesses. It is loosely based on the selectable channels implementation from Java's NIO package.

It can create streams to access files, access network servers or accept connections from network clients.

The streams can be set to non-blocking mode, so this package can manage the access to data read or written to multiple streams simultaneously.

It can register selectors for all the streams, so it can wait and handle the data read or written to multiple streams when it is ready.

  Groups   Freshmeat project   Rate classes User ratings  
  Trackback   Applications   Related links   Files Files  

  Groups  
Group folder image Networking Networking protocols, clients and servers View top rated classes
Group folder image PHP 5 Classes using PHP 5 specific features View top rated classes
Group folder image Files and Folders Listing, accessing and manipulating files and folders View top rated classes


  Innovation Award  
PHP Programming Innovation award nominee
April 2007
Number 4
Some applications require retrieving information from many sources, like files or remote network connections.

Using synchronous access, a regular script can only access one data source at a time. If a script needs to poll multiple sources, not only it may take a lot of time, but waiting from one source to respond may halt the script forever.

An alternative approach to retrieve data from many sources is to use asynchronous access to poll many sources at the same time. This way it does not block the applications from doing parallel processing while waiting for the data to come.

This package provides a solution that uses non-blocking streams to provide simultaneous access to multiple files or network connections for any PHP application.

Manuel Lemos

  Freshmeat project  
Project record: phpmio
Popularity score: 9.59
Vitality score: 43.34

  User ratings  
Ratings
Utility
Consistency
Documentation
Examples
Tests
Videos
Overall
Rank
All time:
Sufficient (75.0%)
Sufficient (75.0%)
-
Sufficient (75.0%)
Sufficient (66.7%)
-
Not sure (59.2%)
878
Month:
Not yet rated by the users

  Trackback links  
Link Description
PHP: Your imagination is your limit. Do you think PHP was only developed for write Web-Sites?... I invite ...

  Applications that use this class  
No application links were specified for this class.
Add link image If you know an application of this package, send a message to the author to add a link here.

  Related links  
Link Description
Sourceforge Sourceforge Project Page
The Thought Lab Tutorial article on using PHP-MIO

  Files folder image Files  
File Role Description
Files folder imageexample (2 files)
Files folder imagetests (4 files)
Plain text file Exception.php Class Exception classes
Plain text file SelectionKey.php Class Contains the SelectionKey class
Plain text file Selector.php Class Contains the Selector class
Plain text file Stream.php Class Contains the Stream class
Plain text file StreamFactory.php Class Contains the StreamFactory class

  Files  /  Files folder image example  
File Role Description
  Plain text file downloader.php Example Example of downloading multiple files
  Plain text file riddler.php Example Self contained example

  Files  /  Files folder image tests  
File Role Description
  Plain text file SelectionKeyTest.php Test Unit test for SelectionKey class
  Plain text file SelectorTest.php Test Unit test for Selector class
  Plain text file StreamFactoryTest.php Test Unit test for StreamFactory class
  Plain text file StreamTest.php Test Unit test for StreamTest

Download all files: phpmio.tar.gz phpmio.zip
NOTICE: if you are using a download manager program like 'GetRight', please Login before trying to download this archive.