send yöntemi
void AsyncUdpConnection::send(string $data)
Asenkron bağlantı işlemini gerçekleştirir. Bu yöntem hemen geri döner.
Parametreler
$data
Sunucuya gönderilecek veri, veri boyutu 65507 bayttan fazla olamaz (udp tek bir veri paketi için maksimum iletim boyutu 65507 bayttır), aksi takdirde gönderim başarısız olur.
Geri Dönüş Değeri
Geri dönüş değeri yoktur.
Örnek
use Workerman\Worker;
use Workerman\Timer;
use Workerman\Connection\AsyncUdpConnection;
use Workerman\Connection\UdpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('udp://0.0.0.0:1234');
$worker->onWorkerStart = function(){
// 1 saniye sonra bir udp istemcisi başlatın, 1234 portuna bağlanın ve "hi" dizesini gönderin
Timer::add(1, function(){
$udp_connection = new AsyncUdpConnection('udp://127.0.0.1:1234');
$udp_connection->onConnect = function(AsyncUdpConnection $udp_connection){
$udp_connection->send('hi');
};
$udp_connection->onMessage = function(AsyncUdpConnection $udp_connection, $data){
// Sunucudan dönen veri hello alındı
echo "recv $data\r\n";
// Bağlantıyı kapat
$udp_connection->close();
};
$udp_connection->connect();
}, null, false);
};
$worker->onMessage = function(UdpConnection $connection, $data)
{
// AsyncUdpConnection istemcisi tarafından gönderilen veriyi al, "hello" dizesini geri gönder
$connection->send("hello");
};
Worker::runAll();
Çalıştırıldıktan sonra benzer bir çıktı verir:
recv hello