WorkerManAdmin.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. require_once WORKERMAN_ROOT_DIR . 'man/Core/SocketWorker.php';
  3. require_once WORKERMAN_ROOT_DIR . 'applications/Common/Protocols/Http.php';
  4. /**
  5. *
  6. * WorkerMan 管理后台
  7. * HTTP协议
  8. *
  9. * @author walkor <worker-man@qq.com>
  10. */
  11. class WorkerManAdmin extends Man\Core\SocketWorker
  12. {
  13. public function onStart()
  14. {
  15. App\Common\Protocols\HttpCache::init();
  16. }
  17. /**
  18. * 确定数据是否接收完整
  19. * @see Man\Core.SocketWorker::dealInput()
  20. */
  21. public function dealInput($recv_str)
  22. {
  23. return App\Common\Protocols\http_deal_input($recv_str);
  24. }
  25. /**
  26. * 数据接收完整后处理业务逻辑
  27. * @see Man\Core.SocketWorker::dealProcess()
  28. */
  29. public function dealProcess($recv_str)
  30. {
  31. /**
  32. * 解析http协议,生成$_POST $_GET $_COOKIE
  33. */
  34. App\Common\Protocols\http_response_begin();
  35. App\Common\Protocols\http_requset_parse($recv_str);
  36. App\Common\Protocols\session_start();
  37. ob_start();
  38. echo 'cookie';var_export($_COOKIE);
  39. echo 'session';var_export($_SESSION);
  40. $_SESSION['abc'] = 1333;
  41. $_SESSION['ddd'] = array('a'=>2,3=>0);
  42. $content = ob_get_clean();
  43. App\Common\Protocols\http_response_finish();
  44. $buffer = App\Common\Protocols\http_encode($content);
  45. $this->sendToClient($buffer);
  46. }
  47. }