PHP Wrapper for The Chuck Norris Db API

v1.0.1 2013-01-26 02:47 UTC


A PHP Wrapper for for the Internet Chuck Norris Database (ICNDb).

Build Status Still Maintained


To ease the process, I recommend you use composer.

    "require": {
        "icndb/icndb": "1.0.x"


$config = array(
    'firstName' => 'Cyrus',
    'lastName' => 'David'

// Pass an optional parameter to change the firstName and lastName
// Default is Chuck Norris
$chuck = new ICNDb\Client($config);

// Get the total Chuck Norris jokes stored in ICNDb
$total = $chuck->count()->get();

// Get all categories
$categories = $chuck->categories()->get();

// Get a specific joke by it's ID
$specific = $chuck->specific(18)->get();

//Get a random joke
$random = $chuck->random()->get();

// Get multiple random jokes
$random2 = $chuck->random(3)->get();

// use exclude() to get jokes not belong to that category
$exclude = $chuck->random()->exclude('nerdy')->get();

// you can also supply an array
$exclude2 = $chuck->random()->exclude(array('nerdy', 'explicit'))->get();

// or chain them
$exclude3 = $chuck->random(2)->exclude('explicit')->exclude('nerdy')->get();

// use limitTo() to get jokes only from that category
// you may supply an array or chain them like exclude()
$limit = $chuck->random()->limitTo('nerdy')->get();


APIUnavailableException - API is either unreachable/unavailable

ChainNotAllowedException - When these methods are chained together random(), specific($id), categories(), count()


To run the unit test suite:

cd tests
curl -s https://getcomposer.org/installer | php
php composer.phar install