sendfile_server.php 720 B

123456789101112131415161718192021222324
  1. <?php
  2. $serv = new swoole_server("0.0.0.0", 9501, SWOOLE_BASE);
  3. $serv->set(array(
  4. 'worker_num' => 1,
  5. ));
  6. $serv->on('timer', function($serv, $interval) {
  7. echo "onTimer: $interval\n";
  8. });
  9. $serv->on('workerStart', function($serv, $worker_id) {
  10. //if($worker_id == 0) $serv->addtimer(300);
  11. });
  12. $serv->on('connect', function (swoole_server $serv, $fd){
  13. $serv->send($fd, filesize(__DIR__.'/test.jpg'));
  14. //echo "Client:Connect.\n";
  15. });
  16. $serv->on('receive', function (swoole_server $serv, $fd, $reactor_id, $data) {
  17. echo "Client[$fd]: $data\n";
  18. $serv->sendfile($fd, __DIR__.'/test.jpg');
  19. //$serv->close($fd);
  20. });
  21. $serv->on('close', function ($serv, $fd) {
  22. //echo "Client: Close.\n";
  23. });
  24. $serv->start();