Esempio n. 1
0
 /**
  * 发送数据到网关
  * @param string $address
  * @param string $buffer
  */
 protected static function sendToGateway($address, $gateway_data)
 {
     // 有$businessWorker说明是workerman环境,使用$businessWorker发送数据
     if (self::$businessWorker) {
         if (!isset(self::$businessWorker->gatewayConnections[$address])) {
             return false;
         }
         return self::$businessWorker->gatewayConnections[$address]->send($gateway_data);
     }
     // 非workerman环境,使用udp发送数据
     $gateway_buffer = GatewayProtocol::encode($gateway_data);
     $client = stream_socket_client("udp://{$address}", $errno, $errmsg);
     return strlen($gateway_buffer) == stream_socket_sendto($client, $gateway_buffer);
 }