PHPackages                             mrcnpdlk/imdbphp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mrcnpdlk/imdbphp

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

mrcnpdlk/imdbphp
================

Library for retrieving film and tv information from IMDb

v6.0.0(8y ago)0239GPL-2.0PHPPHP &gt;=7.0

Since Jul 31Pushed 8y agoCompare

[ Source](https://github.com/mrcnpdlk/imdbphp)[ Packagist](https://packagist.org/packages/mrcnpdlk/imdbphp)[ RSS](/packages/mrcnpdlk-imdbphp/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (1)Dependencies (5)Versions (35)Used By (0)

Fork from [tboothman/imdbphp](https://github.com/tboothman/imdbphp)

- PHP 7 support
- PSR16 cache support

imdbphp
=======

[](#imdbphp)

PHP library for retrieving film and TV information from IMDb. Retrieve most of the information you can see on IMDb including films, TV series, TV episodes, people. Search for titles on IMDb, including filtering by type (film, tv series, etc). Download film posters and actor images.

Quick Start
===========

[](#quick-start)

- Include [imdbphp/imdbphp](https://packagist.org/packages/imdbphp/imdbphp) using [composer](https://www.getcomposer.org), clone this repo or download the latest [release zip](https://github.com/tboothman/imdbphp/releases).
- Find a film you want the metadata for e.g. Lost in translation
- If you're not using composer or an autoloader include `bootstrap.php`.
- Get some data

```
$title = new \Imdb\Title(335266);
$rating = $title->rating();
$plotOutline = $title->plotoutline();
```

Installation
============

[](#installation)

This library scrapes imdb.com so changes their site can cause parts of this library to fail. You will probably need to update a few times a year. Keep this in mind when choosing how to install/configure.

For notifications of new releases try [Sibbell](https://sibbell.com)

Install the files:

- [Composer](https://www.getcomposer.org) (recommended). Include the [imdbphp/imdbphp](https://packagist.org/packages/imdbphp/imdbphp) package.
- Git clone. Checkout the latest release tag.

Install/enable the curl PHP extension

Configuration
=============

[](#configuration)

### LogInterface `Psr\Log\LoggerInterface`

[](#loginterface-psrlogloggerinterface)

```
$oInstanceLogger = new \Monolog\Logger('IMDB');
$oInstanceLogger->pushHandler(new \Monolog\Handler\ErrorLogHandler(
        \Monolog\Handler\ErrorLogHandler::OPERATING_SYSTEM,
        \Psr\Log\LogLevel::DEBUG
    )
);
```

### CacheInterface (PSR16) `Psr\SimpleCache\CacheInterface`

[](#cacheinterface-psr16-psrsimplecachecacheinterface)

```
$oInstanceCacheRedis = new \phpFastCache\Helper\Psr16Adapter(
    'redis',
    [
        "host"                => null, // default localhost
        "port"                => null, // default 6379
        'defaultTtl'          => 3600 * 24, // 24h
        'ignoreSymfonyNotice' => true,
    ]);
```

### Dependency injection

[](#dependency-injection)

```
$oImdb = new Imdb\TitleSearch(null,$oInstanceLogger,$oInstanceCacheRedis);
```

Searching for a film
====================

[](#searching-for-a-film)

```
// include "bootstrap.php"; // Load the class in if you're not using an autoloader
$search = new \Imdb\TitleSearch(); // Optional $config parameter
$results = $search->search('The Matrix', [\Imdb\TitleSearch::MOVIE]); // Optional second parameter restricts types returned

// $results is an array of Title objects
// The objects will have title, year and movietype available
//  immediately, but any other data will have to be fetched from IMDb
foreach ($results as $result) { /* @var $result \Imdb\Title */
    echo $result->title() . ' ( ' . $result->year() . ')';
}
```

Searching for a person
======================

[](#searching-for-a-person)

```
// include "bootstrap.php"; // Load the class in if you're not using an autoloader
$search = new \Imdb\PersonSearch(); // Optional $config parameter
$results = $search->search('Forest Whitaker');

// $results is an array of Person objects
// The objects will have name available, everything else must be fetched from IMDb
foreach ($results as $result) { /* @var $result \Imdb\Person */
    echo $result->name();
}
```

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 67.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~39 days

Recently: every ~104 days

Total

32

Last Release

3078d ago

Major Versions

v2.6.1 → v3.0.02015-06-07

v3.3.0 → v4.0.02016-07-04

v4.1.1 → v5.0.02016-10-16

v5.0.3 → v6.0.02017-12-09

PHP version history (3 changes)2.3.0PHP &gt;5.0

v3.0.0PHP &gt;5.3

v6.0.0PHP &gt;=7.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/e9b157a438a90ac875df96b1b332262157576dad35ab4a49ab7837dd1ed4bd2b?d=identicon)[mrcnpdlk](/maintainers/mrcnpdlk)

---

Top Contributors

[![IzzySoft](https://avatars.githubusercontent.com/u/6781438?v=4)](https://github.com/IzzySoft "IzzySoft (605 commits)")[![tboothman](https://avatars.githubusercontent.com/u/1813336?v=4)](https://github.com/tboothman "tboothman (274 commits)")[![mrcnpdlk](https://avatars.githubusercontent.com/u/22945316?v=4)](https://github.com/mrcnpdlk "mrcnpdlk (9 commits)")[![sebastienaubry](https://avatars.githubusercontent.com/u/41120158?v=4)](https://github.com/sebastienaubry "sebastienaubry (2 commits)")[![RomanSixty](https://avatars.githubusercontent.com/u/467921?v=4)](https://github.com/RomanSixty "RomanSixty (2 commits)")[![NHellFire](https://avatars.githubusercontent.com/u/1146987?v=4)](https://github.com/NHellFire "NHellFire (1 commits)")[![eugenedan](https://avatars.githubusercontent.com/u/1713167?v=4)](https://github.com/eugenedan "eugenedan (1 commits)")

---

Tags

imdb

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mrcnpdlk-imdbphp/health.svg)

```
[![Health](https://phpackages.com/badges/mrcnpdlk-imdbphp/health.svg)](https://phpackages.com/packages/mrcnpdlk-imdbphp)
```

###  Alternatives

[aaronvangeffen/awstatsparser

A series of classes to help read and merge Awstats data files

112.8k](/packages/aaronvangeffen-awstatsparser)[sivka/paginator

bootstrap-4 fork of jasongrimes/php-paginator, a lightweight PHP paginator, for generating pagination controls in the style of Stack Overflow and Flickr. The 'first' and 'last' page links are shown inline as page numbers, and excess page numbers are replaced by ellipses.

141.3k](/packages/sivka-paginator)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
