call->startBatch([OP_SEND_INITIAL_METADATA => $metadata]); foreach($arg_iter as $arg) { $this->call->startBatch([OP_SEND_MESSAGE => $arg->serialize()]); } $this->call->startBatch([OP_SEND_CLOSE_FROM_CLIENT => true]); } /** * Wait for the server to respond with data and a status * @return [response data, status] */ public function wait() { $event = $this->call->startBatch([ OP_RECV_INITIAL_METADATA => true, OP_RECV_MESSAGE => true, OP_RECV_STATUS_ON_CLIENT => true]); $this->metadata = $event->metadata; return array($this->deserializeResponse($event->message), $event->status); } }