{"id":13616249,"url":"https://github.com/Blagues-API/blagues-api-php","last_synced_at":"2025-04-14T00:31:54.305Z","repository":{"id":39590015,"uuid":"486229790","full_name":"Blagues-API/blagues-api-php","owner":"Blagues-API","description":"😂 Module PHP officiel de Blagues-API","archived":false,"fork":false,"pushed_at":"2023-08-27T19:30:36.000Z","size":57,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-26T23:41:15.622Z","etag":null,"topics":["blagues-api","php"],"latest_commit_sha":null,"homepage":"https://packagist.org/packages/zuruuh/blagues-api","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Blagues-API.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-27T14:37:21.000Z","updated_at":"2024-02-11T18:30:00.000Z","dependencies_parsed_at":"2024-07-26T20:43:17.870Z","dependency_job_id":"3b06c932-65b2-4bcc-a730-e3c4b255a0d5","html_url":"https://github.com/Blagues-API/blagues-api-php","commit_stats":{"total_commits":24,"total_committers":3,"mean_commits":8.0,"dds":0.5,"last_synced_commit":"84ef0598cf875d14ce1ff1bc4c4c60c9b4654549"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blagues-API%2Fblagues-api-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blagues-API%2Fblagues-api-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blagues-API%2Fblagues-api-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blagues-API%2Fblagues-api-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Blagues-API","download_url":"https://codeload.github.com/Blagues-API/blagues-api-php/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223611834,"owners_count":17173523,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blagues-api","php"],"created_at":"2024-08-01T20:01:25.805Z","updated_at":"2024-11-08T00:30:58.540Z","avatar_url":"https://github.com/Blagues-API.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Blagues API\n\nBlagues API est un api public, français, et Open-Source, qui permet a n'importe qui d'accéder et de contribuer à une vaste collections de blagues en tous genres. Ce paquet packagist permet à n'importe qui d'intéragir avec l'api très simplement en php avec une approche orientée objet.\n\n## Authentification\n\nVous pouvez récupérer votre token d'authentification sur le site officiel https://www.blagues-api.fr en cliquant sur le bouton \"Connexion\"\n\n## Exemples\n\n**Voici quelques exemples simples de comment vous pouvez intéragir avec l'api.**\n\n```php\n\u003c?php\n\ndeclare(strict_types=1);\n\nuse BlaguesApi\\Factory\\BlaguesApiFactory;\n\n$blaguesApi = BlaguesApiFactory::create($_ENV['TOKEN']);\n\n$joke = $blaguesApi-\u003egetRandom(); // Renvoies une instance de la classe BlaguesApi\\Model\\Joke\n\nvar_dump($joke-\u003egetJoke()); // Renvoie le contenu de la blague.\nvar_dump($joke-\u003egetAnswer()); // Renvoie la réponse à la blague si il y en a une.\n```\n\n```php\n\u003c?php\n\ndeclare(strict_types=1);\n\nuse BlaguesApi\\Model\\Joke;\nuse BlaguesApi\\Factory\\BlaguesApiFactory;\n\n$blaguesApi = BlaguesApiFactory::create($_ENV['TOKEN']);\n\n$joke = $blaguesApi-\u003egetById(1234);\ndump($joke-\u003egetId()); // renvoies 1234\n\n$joke = $blaguesApi-\u003egetRandom([Joke::TYPE_DARK]); // Récuperes une blague aléatoire de n'importe quel type excepté `Joke::TYPE_DARK`.\n\n$joke = $blaguesApi-\u003egetByType(Joke::TYPE_DEV); // Récuperes une blague aléatoire de type `Joke::TYPE_DEV`.\n```\n\nExemple avec Symfony\n```php\n\u003c?php\n\ndeclare(strict_types=1);\n\nnamespace App\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\nuse BlaguesApi\\Factory\\BlaguesApiFactory;\n\nclass JokeController extends AbstractController\n{\n    #[Route('/joke')]\n    public function jokeAction(#[Autowire('%env(BLAGUES_API_TOKEN)%')] string $blaguesApiToken): Response\n    {\n        $blaguesApi = BlaguesApiFactory::create($blaguesApiToken);\n\n        $joke = $blaguesApi-\u003egetRandom();\n\n        return $this-\u003erender('template/joke.html.twig', [\n            'joke' =\u003e $joke,\n        ]);\n    }\n}\n```\n\nExemple Symfony avec injection de dépendance + factory\n```yaml\n# config/services.yaml\nservices:\n  BlaguesApi\\BlaguesApiInterface:\n    factory: ['BlaguesApi\\BlaguesApiFactory', create]\n    arguments: ['%env(BLAGUES_API_TOKEN)%']\n```\n```php\n\u003c?php\n// src/Controller/JokeController\n\ndeclare(strict_types=1);\n\nnamespace App\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\nuse BlaguesApi\\BlaguesApiInterface;\n\nclass JokeController extends AbstractController\n{\n    #[Route('/joke')]\n    public function jokeAction(BlaguesApiInterface $blaguesApi): Response\n    {\n        $joke = $blaguesApi-\u003egetRandom();\n\n        return $this-\u003erender('template/joke.html.twig', [\n            'joke' =\u003e $joke,\n        ]);\n    }\n}\n```\n\n## Contributions\nPour contribuer au projet, merci de jeter un oeil à [contributing.md](./contributing.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBlagues-API%2Fblagues-api-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBlagues-API%2Fblagues-api-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBlagues-API%2Fblagues-api-php/lists"}