Skip to content
PHP interface to Twitter Streaming API
Branch: master
Clone or download
fennb Merge pull request #113 from geckojsc/patch-1
Replace count() > 0 with !empty()  (fix PHP 7.2 warnings)
Latest commit 405d125 Mar 15, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
example Update ghetto-queue-collect.php Nov 24, 2015
lib Replace count() > 0 with !empty() Sep 27, 2017
.gitignore Adding extra patterns to .gitignore. Aug 4, 2011 Update Apr 8, 2016
composer.json Added composer.json May 29, 2012
gpl.txt Added README and GPL. Sep 30, 2009


A PHP interface to the Twitter Streaming API (firehose, etc). This library makes it easy to connect to and consume the Twitter stream via the Streaming API.



  • Provide a simple interface to the Twitter Streaming API for PHP applications
  • Comply to Streaming API recommendations for error handling, reconnection, etc
  • Encourage well-behaved streaming API clients
  • Operate independently of PHP extensions (ie: shared memory, PCNTL, etc)

This library does:

  • Handles connection/authentication to the twitter streaming API
  • Consumes the stream handing off each status to be enqueued by a method of your choice
  • Handles graceful reconnection/back-off on connection and API errors
  • Monitors/reports performance metrics and errors

This library does NOT:

  • Decode/process tweets
  • Provide any sort of queueing mechanism for asynchronous processing (though some examples are included)
  • Provide any sort of inter-process communication
  • Provide any non-streaming API functionality (ie: user profile info, search, etc)

How To Use

See the example subdirectory for example usage. In each example file you will need to insert your own oauth token/secret, and the key/secret for the Twitter app you have created.

  • filter-oauth.php shows how to follow certain keywords.
  • sample.php shows how to get a small random sample of all public statuses.
  • userstream-alternative.php shows how to get user streams. (All activity for one user.)
  • sitestream.php shows to how to get site streams. (All activity for multiple users.)

Please see the wiki for documentation.

Known Issues

  • After upgrading to PHP 5.6.8, Phirehose causes CPU spikes. To fix, upgrade to PHP 5.6.9 (#83).


If you have any additional questions, head over to the Phirehose Users group []. It's recommended that you join (or at least regularly check) this group if you're actively using Phirehose so I can let you know when I release new versions.

Additionally, if you'd like to contact me directly, I'm @fennb on twitter.

You can’t perform that action at this time.