den1008/discord-php

An unofficial API to interact with the voice and text service Discord.

v4.0.5 2024-11-19 08:45 UTC

README

Library is currently dead, doubt it works at all and if it does there are so many bugs that it needs another rewrite which I'm not wanting to do really, sorry. The fact that we even made a PHP library that interacts with the Discord gateway is kind of a miracle but it is time to say farewell. Thanks to everyone that helped out along the way, especially Aaron (@aequasi). Maybe one day someone can take over and do a rewrite. Much love,

  • David

DiscordPHP

Build Status Discord Chat PHP Discorders

A wrapper for the official Discord REST, gateway and voice APIs.

FAQ

  1. Can I run DiscordPHP on a webserver (e.g. Apache, nginx)?
    • No, DiscordPHP will only run in CLI. If you want to have an interface for your bot you can integrate react/http with your bot and run it through CLI.

Getting Started

Installing DiscordPHP

DiscordPHP is installed using Composer. Make sure you have installed Composer and are used to how it operates. We require a minimum PHP version of PHP 5.5.9, however it is reccomended that you use PHP 7. PHP 5.x support will be removed in the future.

This library has not been tested with HHVM.

  1. Run composer require team-reflex/discord-php. This will install the lastest release.
    • If you would like, you can also install the development branch by running composer require team-reflex/discord-php dev-develop.
  2. Include the Composer autoload file at the top of your main file:
    • include __DIR__.'/vendor/autoload.php';
  3. Make a bot!

Basic Example

<?php

include __DIR__.'/vendor/autoload.php';

use Discord\Discord;

$discord = new Discord([
	'token' => 'bot-token',
]);

$discord->on('ready', function ($discord) {
	echo "Bot is ready!", PHP_EOL;

	// Listen for messages.
	$discord->on('message', function ($message, $discord) {
		echo "{$message->author->username}: {$message->content}",PHP_EOL;
	});
});

$discord->run();

Notes

  • This library can use a lot of RAM and PHP may hit the memory limit. To increase the memory limit, use ini_set('memory_limit', '200M') to increase it to 200 mb. If you would like it to be unlimited, use ini_set('memory_limit', '-1').

Documentation

Raw documentation can be found in-line in the code and on the DiscordPHP Class Reference. More user friendly and examples will soon be coming on the DiscordPHP Wiki.

Contributing

We are open to contributions. However, please make sure you follow our coding standards (PSR-4 autoloading and custom styling). We use StyleCI to format our code. Our StyleCI settings can be found here.

Library Comparison

See this chart for a feature comparison and list of other Discord API libraries.