Wrapper สำหรับ Discord REST, เกตเวย์ และ API เสียงอย่างเป็นทางการ มีเอกสารประกอบอยู่ที่นี่ แม้ว่าจะมีจำกัดในขณะนี้ รวมถึงการอ้างอิงชั้นเรียนด้วย อย่าลังเลที่จะถามคำถามในเซิร์ฟเวอร์ Discord ด้านบน
สำหรับการทดสอบและความเสถียร เราจะยินดีอย่างยิ่งหากคุณสามารถเพิ่มบอททดสอบของเราไปยังเซิร์ฟเวอร์ของคุณได้ เราไม่เก็บข้อมูลใดๆ - บอทจะอยู่เฉยๆ และไม่มีการโต้ตอบกับใครเลย และใช้เพื่อทดสอบความเสถียรกับกิลด์จำนวนมาก คุณสามารถเชิญบอทได้ที่นี่
คำเตือน สาขานี้มีคุณสมบัติทดลอง ห้ามใช้ในการผลิต! ดูหน้าวิกิสำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการตั้งค่า
ฉันสามารถรัน DiscordPHP บนเว็บเซิร์ฟเวอร์ (เช่น Apache, nginx) ได้หรือไม่
ไม่ DiscordPHP จะทำงานเฉพาะใน CLI เท่านั้น หากคุณต้องการมีอินเทอร์เฟซสำหรับบอทของคุณ คุณสามารถรวม react/http เข้ากับบอทของคุณและรันผ่าน CLI ได้
PHP หน่วยความจำไม่เพียงพอ?
ลองยกเลิกการจำกัดหน่วยความจำ PHP ของคุณโดยใช้ ini_set('memory_limit', '-1');
-
ก่อนที่คุณจะเริ่มใช้ไลบรารีนี้ คุณ จำเป็น ต้องรู้ว่า PHP ทำงานอย่างไร คุณจำเป็นต้องรู้ว่า Event Loops และ Promises ทำงานอย่างไร นี่เป็นข้อกำหนดพื้นฐานก่อนที่คุณจะเริ่มต้น ถ้าไม่มีความรู้นี้ก็จะมีแต่ความทุกข์
PHP 8.0 หรือสูงกว่า (แนะนำเวอร์ชันล่าสุด)
PHP x86 (32 บิต) ต้องเปิดใช้งาน ext-gmp
ext-json
ext-zlib
หนึ่งใน ext-uv
(แนะนำ), ext-ev
หรือ ext-event
สำหรับลูปเหตุการณ์ที่รวดเร็วและมีประสิทธิภาพยิ่งขึ้น
ext-mbstring
หากจัดการอักขระที่ไม่ใช่ละติน
PHP 64 บิต
ext-sodium
FFmpeg
น่าเสียดายที่ PHP บน Windows ไม่สามารถเข้าถึง Windows Certificate Store นี่เป็นปัญหาเนื่องจากมีการใช้งาน TLS และมีการใช้การตรวจสอบใบรับรองดังกล่าว (การปิดตัวเลือกนี้ ไม่ใช่ ทางเลือก)
คุณจะสังเกตเห็นปัญหานี้เมื่อสคริปต์ของคุณออกทันทีหลังจากวนรอบหนึ่งโดยไม่มีข้อผิดพลาดใดๆ
เนื่องจากผู้ใช้ไลบรารีนี้จำเป็นต้องดาวน์โหลดสารสกัดผู้ออกใบรับรองจากเว็บไซต์ cURL
เส้นทางไปยัง caextract จะต้องตั้งค่าใน php.ini
สำหรับ openssl.cafile
DiscordPHP ได้รับการติดตั้งโดยใช้ Composer
เรียกใช้ composer require team-reflex/discord-php
นี่จะติดตั้งเวอร์ชันเสถียรล่าสุด
หากคุณต้องการ คุณยังสามารถติดตั้งสาขาการพัฒนาได้ด้วยการรัน composer require team-reflex/discord-php dev-master
รวมไฟล์โหลดอัตโนมัติของ Composer ไว้ที่ด้านบนของไฟล์หลักของคุณ:
include __DIR__.'/vendor/autoload.php';
สร้างบอท!
<?phpinclude __DIR__.'/vendor/autoload.php';use DiscordDiscord;use DiscordPartsChannelMessage;use DiscordWebSocketsIntents;use DiscordWebSocketsEvent;$discord = new Discord(['token' => 'bot-token','intents' => Intents ::getDefaultIntents()// | เจตนา::MESSAGE_CONTENT, // หมายเหตุ: MESSAGE_CONTENT ได้รับสิทธิพิเศษ ดู https://dis.gd/mcfaq]);$discord->on('ready', function (Discord $discord) {echo "Bot is ready!", PHP_EOL;// Listen for message. $discord->on(Event::MESSAGE_CREATE, ฟังก์ชั่น (ข้อความ $message, Discord $discord) {echo "{$message->author->username}: {$message->content}", PHP_EOL;// หมายเหตุ: ต้องเปิดใช้งานเจตนา MESSAGE_CONTENT เพื่อรับเนื้อหา หากไม่ได้กล่าวถึงบอต/DMed.}); });$discord->วิ่ง();
ดูโฟลเดอร์ตัวอย่างเพิ่มเติม
สามารถดูเอกสารสำหรับเวอร์ชันล่าสุดได้ที่นี่ บทช่วยสอนที่สนับสนุนโดยชุมชนสามารถพบได้บนวิกิ
เราเปิดรับการมีส่วนร่วม อย่างไรก็ตาม โปรดตรวจสอบให้แน่ใจว่าคุณปฏิบัติตามมาตรฐานการเขียนโค้ดของเรา (การโหลดอัตโนมัติ PSR-4 และการจัดรูปแบบแบบกำหนดเอง) โปรดเรียกใช้ php-cs-fixer ก่อนที่จะเปิดคำขอดึงโดยการเรียกใช้ composer run-script cs
ใบอนุญาต MIT, © David Cole และผู้สนับสนุนอื่นๆ 2016-ปัจจุบัน