router.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. /**
  3. * Notes:路由分发器
  4. * User: wsc
  5. * Time: 2020/4/30 12:03
  6. * Class router
  7. */
  8. class router
  9. {
  10. public function run() {
  11. $this->specialFeedBack();
  12. $pro = "services_2";
  13. $action = $_REQUEST['act'];
  14. $mod = $_REQUEST['mod'];
  15. $file = PATH_API."{$pro}/{$mod}.php";
  16. if (!file_exists($file)) {
  17. die('not find file');
  18. }
  19. require_once $file;
  20. $class = "{$mod}";
  21. $obj = new $class($_REQUEST);
  22. if (!method_exists($obj, $action)) {
  23. die();
  24. }
  25. //统一入口校验
  26. //调用具体的方法
  27. $res = $obj->$action();
  28. return $res;
  29. }
  30. /**
  31. * Notes:特殊接口处理-反馈(兼容老版本)
  32. * User: wsc
  33. * Time: 2020/4/30 12:35
  34. */
  35. public function specialFeedBack(){
  36. $arr = [
  37. '/v1_1/user/feedback/add'=>"Feedback.userAdd",//用户添加反馈
  38. '/v1_1/user/feedback/have_read'=>"Feedback.userRead",//用户设置反馈回复信息为已读状态
  39. '/v1_1/user/feedback/list'=>"Feedback.userGet",//获取反馈列表
  40. '/v1_1/sys/feedback/add'=>"Feedback.sysAdd",//系统回复反馈
  41. '/v1_1/sys/feedback/have_read'=>"Feedback.sysRead",//系统设置反馈信息为已读状态
  42. '/v1_1/sys/feedback/list'=>"Feedback.sysGet",//获取反馈列表
  43. '/v1_1/sys/feedback/detail/list'=>"controller/v1_1/Feedback@sys_detail_lll",//获取反馈列表
  44. ];
  45. if(!empty($arr[$_REQUEST['api']])){
  46. list($_REQUEST['mod'], $_REQUEST['act']) = explode('.', $arr[$_REQUEST['api']]);
  47. }
  48. }
  49. }