discord php est une bibliothèque PHP développée pour inclure et simplifier la création et la connexion entre les sites Web, les applications en ligne et Discord.
Seul PHP 5.6+ est requis. Commençons par télécharger la bibliothèque discord-php, puis extrayons-la dans your_server_path/
.
Un moyen rapide consiste à importer le Autoload.php
:
require_once ( " /your/custom/path/to/discord-php/Autoload.php " );
De plus, vous pouvez inclure uniquement les cours dont vous avez besoin :
// Required
require_once ( " ./Discord.php " );
require_once ( " ./Client.php " );
// Optional
include_once ( " ./Discord/Guilds.php " );
include_once ( " ./Discord/Channels.php " );
Avant d'utiliser la librairie discord php , vous devez créer votre application Discord, puis créer un "Nouvel objet de configuration". comme suit :
$ configs = array ();
$ configs [ " token " ] = " YOUR_BOT_TOKEN " ;
$ configs [ " authType " ] = " Bot " ; // Optional (Default: "Bot")
$ configs [ " client_id " ] = " YOUR_CLIENT_ID " ; // Optional (Default: null)
$ configs [ " client_secret " ] = " YOUR_CLIENT_SECRET " ; // Optional (Default: null)
$ configs [ " public_key " ] = " YOUR_PUBLIC_KEY " ; // Optional (Default: null)
$ configs [ " stash " ] = array ( // Optional
" Guild Name " => array (
" guild_id " => " YOUR_SERVER_ID " ,
" channels " => array (
" Channel Name " => " YOUR_CHANNEL_ID "
),
" roles " => array (
" Role Name " => " YOUR_ROLE_ID "
),
" members " => array (
" Member Name " => " YOUR_MEMBER_USER_ID "
)
)
);
$ discord_configs = New Discord Configs ( $ configs );
Où:
client_id
= @me
- Requis pour les requêtes oAuth2 / Token Exchange ;;client_secret
= Requis pour les requêtes oAuth2 / Token Exchange ;token
= Requis pour toute demande d'API telle que New DiscordClientUsers("USER_ID");
; Vous pouvez également facilement ajouter toutes les informations de votre application Discord en utilisant le fichier ./Configs.php
, puis en incluant ce qui suit :
$ discord_configs = New Discord Configs ( include ( " ./Configs.php " ));
Créez un client Discord basé sur vos configurations Discord, pour envoyer les requêtes API Discord comme suit :
$discord = New DiscordClient($discord_configs);
Vous êtes maintenant prêt à utiliser la lib discord php comme vous le souhaitez ! Tout ce que vous devez savoir sur la bibliothèque, comme les classes et « Comment l'utiliser », est décrit ici dans le wiki. J'espère que cette bibliothèque vous aidera à coder pour Discord en PHP. Toute suggestion ou amélioration est toujours la bienvenue.
require_once ( " ./Autoload.php " );
$ configs = include ( " ./Configs.php " );
$ discord = New Discord Client ( New Discord Configs ( $ configs ));
// Guilds
$ guild = New Discord Client Guilds ( $ discord , " GUILD_ID " );
$ members = $ guild -> members ();
$ specific_member = $ guild -> members ( " USER_ID " ); // Will return a DiscordClientMembers Object
$ channels = $ guild -> channels ();
$ specific_channel = $ guild -> channels ( " CHANNEL_ID " ); // Will return a DiscordClientChannels Object
// Channels
$ channel = New Discord Client Channels ( $ discord , " CHANNEL_ID " );
$ messages = $ channel -> messages ();
$ specific_message = $ channel -> message ( " MESSAGE_ID " ); // Will return a DiscordClientMessages Object
$discord->stash
Avant de commencer, vous devez en savoir plus sur un objet « Stash » : Tout d'abord, un stash est un tableau facultatif à configurer lors de la création d'une nouvelle configuration Discord. En respectant le standard proposé dans l'exemple, vous pouvez facilement utiliser le « Client Discord » pour faire des réponses API, comme suit :
$ configs = array (
" token " => " YOUR_BOT_TOKEN " ,
" stash " => array (
" CUSTOM_GUILD_NAME " => array (
" guild_id " => " YOUR_GUILD_ID "
"channels" => array (
" CUSTOM_CHANNEL_NAME " => " YOUR_CHANNEL_ID "
)
),
" CUSTOM_GUILD_NAME_2 " => array (
" channels " => array (
" CUSTOM_CHANNEL_NAME_2 " => " YOUR_CHANNEL_ID_2 "
)
)
)
);
$ discord = New Discord Client ( New Discord Configs ( $ configs ));
// Get a DiscordClientGuilds directly from the client using your Stash
// Please, make sure you've correctly imported ./Discord/Guilds.php class before.
// Also, make sure you're using the right $config standard and "GUILD_NAME" in order to get automatically a GUILD_ID
$ guild = $ discord -> Guilds ( " CUSTOM_GUILD_NAME " );
// You can also send a custom Guild ID
$ guild = $ discord -> Guilds ( " GUILD_ID " );
// You can do the same for the channels
// Make sure you've correctly imported ./Discord/Channels.php class before
$ channel = $ discord -> Channels ( " CUSTOM_CHANNEL_NAME_2 " );
// And then, to get a channel using a custom Channel ID
$ channel = $ discord -> Channels ( " CHANNEL_ID " );