承接 burningyolo/get-random-recommendations 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

burningyolo/get-random-recommendations

最新稳定版本:v1.0.0

Composer 安装命令:

composer require burningyolo/get-random-recommendations

包简介

A PHP package to get random anime, manga, and game recommendations

README 文档

README

A PHP Composer package to get random anime, manga, and game recommendations Fully Random or by some filters

This Package is wrapper for bunch of my API's present at HishuAniGami

Installation

Install the package via Composer:

composer require burningyolo/get-random-recommendations

Usage

Basic Setup

<?php

require_once 'vendor/autoload.php';

use RandomRecommendations\RecommendationClient;

$client = new RecommendationClient();

Getting Random Recommendations

Random Anime

// Get a completely random anime
$anime = $client->getRandomAnime();
echo $anime->getTitle() . " - " . $anime->getMalUrl();

// Get anime with specific tags
$anime = $client->getRandomAnime(['action', 'adventure']);
echo "Anime: " . $anime->getTitle();
echo "Type: " . $anime->getType();
echo "Episodes: " . $anime->getEpisodes();
echo "Genres: " . implode(', ', $anime->getGenres());

Random Manga

// Get a completely random manga
$manga = $client->getRandomManga();
echo $manga->getTitle() . " - " . $manga->getMalUrl();

// Get manga with specific tags
$manga = $client->getRandomManga(['romance', 'slice_of_life']);
echo "Manga: " . $manga->getTitle();
echo "Status: " . $manga->getStatus();
echo "Chapters: " . $manga->getChapters();
echo "Volumes: " . $manga->getVolumes();

Random Game

// Get a completely random game
$game = $client->getRandomGame();
echo $game->getName() . " - $" . $game->getPrice();

// Get game with specific filters
$game = $client->getRandomGame(
    ['Action', 'Adventure'],  // genres
    ['Indie', 'Singleplayer'], // tags
    29.99  // max price
);
echo "Game: " . $game->getName();
echo "Price: $" . $game->getPrice();
echo "Genres: " . implode(', ', $game->getGenres());
echo "Tags: " . implode(', ', $game->getTags());

Get All Random Recommendations at Once

$recommendations = $client->getRandomRecommendations([
    'anime_tags' => ['action', 'shounen'],
    'manga_tags' => ['romance'],
    'game_genres' => ['Indie'],
    'game_tags' => ['Anime', 'cute'],
    'max_price' => 10.00
]);

if ($recommendations['anime']) {
    echo "Anime: " . $recommendations['anime']->getTitle() . "\n";
}

if ($recommendations['manga']) {
    echo "Manga: " . $recommendations['manga']->getTitle() . "\n";
}

if ($recommendations['game']) {
    echo "Game: " . $recommendations['game']->getName() . "\n";
}

Getting Available Tags/Genres

// Get all available anime tags
$animeTags = $client->getAnimeTags();
echo "Available anime tags: " . implode(', ', $animeTags);

// Get all available manga tags
$mangaTags = $client->getMangaTags();
echo "Available manga tags: " . implode(', ', $mangaTags);

// Get all available game tags
$gameTags = $client->getGameTags();
echo "Available game tags: " . implode(', ', $gameTags);

// Get all available game genres
$gameGenres = $client->getGameGenres();
echo "Available game genres: " . implode(', ', $gameGenres);

Error Handling

use RandomRecommendations\Exceptions\ApiException;

try {
    $anime = $client->getRandomAnime(['nonexistent_tag']);
} catch (ApiException $e) {
    echo "Error: " . $e->getMessage();
}

Models

Anime Model

  • getTitle() - Get anime title
  • getMalUrl() - Get MyAnimeList URL
  • getType() - Get anime type (TV, Movie, etc.)
  • getEpisodes() - Get number of episodes
  • getGenres() - Get array of genres
  • toArray() - Get all data as array

Manga Model

  • getTitle() - Get manga title
  • getMalUrl() - Get MyAnimeList URL
  • getStatus() - Get publication status
  • getChapters() - Get number of chapters
  • getVolumes() - Get number of volumes
  • getGenres() - Get array of genres
  • toArray() - Get all data as array

Game Model

  • getName() - Get game name
  • getGameId() - Get game ID
  • getPrice() - Get game price
  • getGenres() - Get array of genres
  • getTags() - Get array of tags
  • toArray() - Get all data as array

Requirements

  • PHP 8.1 or higher
  • Guzzle HTTP client

License

MIT License

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-07-12