Imdbphp Versions Save

PHP library for retrieving film and tv information from IMDb

v8.2.0

2 months ago

No methods have been converted to GraphQL so some methods have limited number of entries.

Added

  • Add Podcast Episode support #326 by @Fossil01

Fixes

  • Fix Title::trivia() - limited to 5 entries
  • Fix Title::filmingDates()
  • Fix Title::keywords_all() - limited to 50 entries
  • Fix Title::locations() - limited to 5 entries
  • Fix Title::quotes() and Title::quotes_split()
  • Fix Title::goofs() - limited to 5 entries
  • Fix Title::crazy_credits()
  • Fix Title::metacriticRating()
  • Fix Title::creator()

v8.1.0

1 year ago
  • Add Psr/Log v2 to allowed versions in composer.json ! Fix Title::aspect_ratio no longer returning anything

v8.0.2

1 year ago

Fixes

  • Fixes Title::alsoknow() returning an 'original title' with a null name when your imdb display title is the original title #298 Thanks @mam4dali
  • Improved the documentation of Title::alsoknow(). It wasn't clear when original title was returned and the comment field wasn't documented #297

Deprecation

  • Deprecate PersonSearch::reset()

Dev notes

Increased PHPStan level to 4, which should help ensuring return types are correct

v8.0.1

1 year ago
  • Added the ability to fetch multiple pages of results, and change the amount you receive per page to TitleSearchAdvanced. Thanks @miaadp
    • New method setCount() to change the number of results. Currently 50 by default
    • New method setStart() which changes the offset for the results. For example you fetch one page, then call setStart(50) and you'll get the next 50 results.
  • Fix Title::alsoknow() when country is not set. countryCode and languageCode will now be null if no language or country is set

v8.0.0

1 year ago

IMDb made changes to a few of its pages, the biggest change is not showing all information on initial page load. Because of this we've changed to loading this data from IMDb's graphql api instead. This should make no difference to users of the library except the graphql code does not localise data. Any of the methods using it (every method mentioned in this release) might not return country/language specific information and will not respect the Config::language setting. Please raise an issue if this causes a problem.

Breaking changes

  • Title::plot() returns plain text utf-8 strings rather than html. It no longer contains the author at the end (You can get the author from Title::plot_split())
  • Title::plot_split() also has plain text utf-8 strings rather than html in its plot field
  • Title::releaseInfo() return has changed. The country strings have changed slightly, the dates are numbers rather than stringy numbers and month has been removed.
    • Was ['country' => 'USA', 'day' => '9', 'month' => 'June', 'mon' => '06', 'year' => '1993' ]
    • Now [ 'country' => 'United States', 'day' => 9, 'mon' => 6, 'year' => 1993, 'attributes' => [ 'Washington, D.C.', 'premiere' ] ]
  • Title::alsoknow() no longer returns a year or lang field (they were previously always an empty string). It no longer returns a comment of '$language title' for each aka.

Fixes

  • Fixed these methods broken by site change: Title::releaseInfo(), Title::synopsis(), Title::alternateVersions(), Title::runtimes(), Title::distCompany(), Title::specialCompany(), Title::prodCompany(), Title::specialCompany(), Title::otherCompany(), Title::movie_recommendations(), Title::taglines(), Title::movieconnection(), Title::extReviews(), Title::officialSites(), Title::videosites()

Additions

  • Title::alsoknow() now returns a countryCode, language and languageCode for each AKA.
  • Title::runtimes() now returns a country and countryCode
  • Title::videosites() now returns a language, languageCode but not a type.
    • Now ['url' => 'x', 'site' => FILM.TV, 'desc' => trailer, 'language' => German, 'languageCode' => de]
    • Was ['url'=>'x', 'site' => 'FILM.TV', 'desc' => 'trailer', 'type' => '']

v7.4.2

1 year ago

Bug fixes:

  • Remove visibility from const to support < PHP 7.1

v7.4.1

1 year ago

This release adds support for PHP 8.2, at least it's not generating any errors when running tests.

Bug fixes:

  • Fix demo as Title::soundtrack where simplified in v7.3.1
  • Fix Person::photo_localurl in PHP 8.2
  • Fix Title::photo_localurl in PHP 8.2

v7.4.0

1 year ago

This release makes it easier to follow the "coding standard" that never where written down. We are using PHP-FIG - PER Coding Style that currently are identical to PSR-12. It's a living coding style that can adapt to newer PHP versions without issuing a new standard.

We have also incorporate EditorConfig so that we get the correct amount of tab/spaces depending on file type/path.

PHPStan have been raised to level 1 to automatically find more bugs in the code.

  1. Write some code
  2. composer test
  3. composer phpstan
  4. composer style
  5. Commit

Additions:

Changes:

  • Move the PHPStan configuration to neon and raise the level to 1
  • Format project according to coding style
  • Don't use zip for PersonTest
  • Change Title::parentalGuide() to also html entity decode single quotes

Bug fixes:

  • Fix Title::cast in PHP 8.1
  • Fix Person::photo
  • Fix TitleTest::testEpisodes_returns_unknown_season_episodes
  • Fix Title::aspect_ratio
  • Fix TitleTest::testRuntimes_two_runtimes_one_annotation
  • Fix Person::real_id
  • Fix TitleTest::testAlsoknow
  • Fix Person::filmograf #286 @duck7000
  • Fix Calendar::upcomingReleases
  • Fix Title::tagline in PHP 5.6 #284 @paxter

v7.3.1

1 year ago

Changes:

  • Remove PHP 7.3 from tests
  • Simplify Title::soundtrack() to just return raw data rather than badly trying to parse it

Bug fixes:

  • Fix Calendar::upcomingReleases()
  • Fix PersonSearch::results()
  • Fix Title::storyline()
  • Fix Title::tagline()
  • Fix Title::parentalGuide()
  • Fix TitleSearch::search()
  • Fix Title::populateEpisodeSeasonEpisode()
  • Fix Title::keywords() #278 @duck7000 and @tboothman
  • Fix Person::spouse() #275 @duck7000
  • Fix Title::died()

v7.3.0

2 years ago

Additions:

  • Person::real_id() gives the imdb ID of a person after following any redirects from the ID requested. Thanks @duck7000
  • New class Calendar with method upcomingReleases($country) that lets you see the upcoming releases for a country as seen on https://www.imdb.com/calendar?region=gb. Thanks @duck7000

Bug fixes:

  • Fix character encoding in methods that use xpath. (Affected Title::cast() names and role names, maybe more) #262 #253
  • Decode html single quotes in Title::title() #264
  • Fix Title::comment(). #258 #270
  • Fix title redirects not being followed (Sometimes imdb pages are redirected to one with a different ID)
  • Fix Title::movie_recommendations(). Thanks @duck7000 #268