méthode send

void AsyncUdpConnection::send(string $data)

Exécute une opération de connexion asynchrone. Cette méthode renvoie immédiatement.

Paramètres

$data
Données à envoyer au serveur, la taille des données ne peut pas dépasser 65507 octets (la taille maximale de transmission d'un seul paquet UDP est de 65507 octets), sinon l'envoi échouera.

Valeur de retour

Pas de valeur de retour

Exemple

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(){
    // Démarrer un client udp après 1 seconde, se connecter au port 1234 et envoyer la chaîne hi
    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){
            // Données hello renvoyées par le serveur
            echo "recv $data\r\n";
            // Fermer la connexion
            $udp_connection->close();
        };
        $udp_connection->connect();
    }, null, false);
};
$worker->onMessage = function(UdpConnection $connection, $data)
{
    // Données reçues du client AsyncUdpConnection, renvoyer la chaîne hello
    $connection->send("hello");
};
Worker::runAll();             

Après exécution, affiche quelque chose de similaire à:

recv hello