onMessage
คำอธิบาย:
callback Worker::$onMessage
ฟังก์ชัน callback ที่ถูกเรียกเมื่อไคลเอนต์ส่งข้อมูลผ่านการเชื่อมต่อ (เมื่อ Workerman รับข้อมูล)
พารามิเตอร์ของฟังก์ชัน callback
$connection
วัตถุการเชื่อมต่อ หรือ อินสแตนซ์ของ TcpConnection ใช้ในการจัดการการเชื่อมต่อของไคลเอนต์ เช่น ส่งข้อมูล, ปิดการเชื่อมต่อ เป็นต้น
$data
ข้อมูลที่ส่งมาจากการเชื่อมต่อของไคลเอนต์ หาก Worker ระบุโปรโตคอล $data จะเป็นข้อมูลที่ถูก decode (ถอดรหัส) ตามโปรโตคอลที่กำหนด ชนิดข้อมูลขึ้นอยู่กับการ implement ของโปรโตคอล decode() โดย websocket text frame จะเป็นสตริง ขณะที่โปรโตคอล HTTP จะเป็นวัตถุ Workerman\Protocols\Http\Request。
ตัวอย่าง
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onMessage = function(TcpConnection $connection, $data)
{
var_dump($data);
$connection->send('รับข้อมูลสำเร็จ');
};
// ทำงานของ worker
Worker::runAll();
คำแนะนำ: นอกจากการใช้ฟังก์ชันนิรนามเป็น callback แล้วยังสามารถ ดูที่นี่ เพื่อใช้วิธีการเขียน callback อื่น ๆ ได้อีกด้วย。