PHP code example of bjthecod3r / laravel-tmdb
1. Go to this page and download the library: Download bjthecod3r/laravel-tmdb library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
bjthecod3r / laravel-tmdb example snippets
use BjTheCod3r\Tmdb\Facades\Tmdb;
$movie = Tmdb::movies()->details(27205);
$movie->title; // "Inception"
$movie->year(); // 2010
$movie->genres->pluck('name'); // Illuminate\Support\Collection
Tmdb::image()->url($movie->posterPath, 'w500');
Tmdb::movies()->details(27205);
Tmdb::movies()->details(27205, ['append_to_response' => ['credits', 'videos']]);
Tmdb::movies()->credits(27205); // Credits (cast + crew)
Tmdb::movies()->images(27205); // Collection<Image>
Tmdb::movies()->videos(27205); // Collection<Video>
Tmdb::movies()->reviews(27205); // Paginated<Review>
Tmdb::movies()->recommendations(27205); // Paginated<Movie>
Tmdb::movies()->similar(27205); // Paginated<Movie>
Tmdb::movies()->watchProviders(27205);
Tmdb::movies()->popular();
Tmdb::movies()->topRated();
Tmdb::movies()->nowPlaying();
Tmdb::movies()->upcoming();
Tmdb::tv()->details(1396);
Tmdb::tv()->season(1396, 1); // Season (with episodes)
Tmdb::tv()->episode(1396, 1, 1); // Episode
Tmdb::tv()->credits(1396);
Tmdb::tv()->popular();
Tmdb::tv()->topRated();
Tmdb::tv()->onTheAir();
Tmdb::tv()->airingToday();
Tmdb::people()->details(6193);
Tmdb::people()->movieCredits(6193);
Tmdb::people()->tvCredits(6193);
Tmdb::people()->images(6193); // Collection<Image>
Tmdb::people()->popular();
Tmdb::search()->movies('inception', ['year' => 2010]); // Paginated<Movie>
Tmdb::search()->tv('breaking bad'); // Paginated<TvShow>
Tmdb::search()->people('nolan'); // Paginated<Person>
Tmdb::search()->companies('warner'); // Paginated<ProductionCompany>
Tmdb::search()->collections('matrix'); // Paginated<MovieCollection>
Tmdb::search()->keywords('superhero'); // Paginated<Keyword>
// Multi-search returns mixed media; asResource() promotes each result
// to its concrete type (Movie | TvShow | Person):
Tmdb::search()->multi('matrix')->results->map->asResource();
Tmdb::discover()->movies()
->withGenres([28, 12]) // Action, Adventure
->year(2023)
->withMinimumVoteAverage(7.5)
->sortBy('popularity.desc')
->page(1)
->get(); // Paginated<Movie>
// Any TMDB discover filter is available via where():
Tmdb::discover()->tv()->where('with_networks', 213)->get();
Tmdb::trending()->movies('week'); // Paginated<Movie>
Tmdb::trending()->tv('day'); // Paginated<TvShow>
Tmdb::trending()->people('week'); // Paginated<Person>
Tmdb::trending()->all('day'); // Paginated<MediaResult>
Tmdb::genres()->movies(); // Collection<Genre>
Tmdb::genres()->tv(); // Collection<Genre>
Tmdb::configuration()->details(); // image base URLs & sizes
Tmdb::configuration()->countries();
Tmdb::configuration()->languages();
$movie = Tmdb::movies()->details(27205);
$movie->title; // string
$movie->releaseDate; // CarbonImmutable
$movie->voteAverage; // float
$movie->genres; // Collection<Genre>
$movie->get('belongs_to_collection.name');
$movie['original_title'];
return $movie; // a controller can return it directly as JSON
$page = Tmdb::movies()->popular(['page' => 1]);
$page->results; // Collection<Movie>
$page->page; // 1
$page->totalPages; // 500
$page->totalResults; // 10000
$page->hasMorePages(); // true
$page->nextPage(); // 2
$page->results->each(function (Movie $movie) {
// ...
});
Tmdb::image()->url($movie->posterPath, 'w500');
Tmdb::image()->original($movie->backdropPath);
use BjTheCod3r\Tmdb\Exceptions\ResourceNotFoundException;
try {
Tmdb::movies()->details(999999999);
} catch (ResourceNotFoundException $e) {
// ...
}
use BjTheCod3r\Tmdb\Tmdb;
public function __construct(private Tmdb $tmdb) {}
Tmdb::client()->get('movie/27205/keywords');
use Illuminate\Support\Facades\Http;
Http::fake([
'api.themoviedb.org/3/movie/*' => Http::response(['id' => 27205, 'title' => 'Inception']),
]);
bash
php artisan vendor:publish --tag=tmdb-config