Core.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace Main\Lib;
  3. use Dever;
  4. function callAction($send)
  5. {
  6. if (isset($send['i']) && $send['i'] > 0) {
  7. $wechat = new Wechat($send['i'], $send['a']);
  8. $param = array();
  9. if (!isset($send['p'])) {
  10. $send['p'] = false;
  11. }
  12. if ($send['s']) {
  13. $param = Dever::load($send['a'] . '/' . $send['s'], $send['p']);
  14. }
  15. if (isset($param['run_num']) && $param['run_num'] > 1) {
  16. for ($i = 1; $i <= $param['run_num']; $i++) {
  17. $result = $wechat->curl($send['t'], $param, false);
  18. if ($send['e']) {
  19. Dever::load($send['a'] . '/' . $send['e'], $send['i'], $result, $send['p']);
  20. }
  21. }
  22. if ($send['e']) {
  23. Dever::load($send['a'] . '/' . $send['e'], $send['i'], $result, $send['p'], true);
  24. }
  25. } else {
  26. $result = $wechat->curl($send['t'], $param, false);
  27. if ($send['e']) {
  28. Dever::load($send['a'] . '/' . $send['e'], $send['i'], $result, $send['p']);
  29. }
  30. }
  31. return $result;
  32. }
  33. return array();
  34. }
  35. class Core
  36. {
  37. static public function run($id, $method, $start, $end, $app, $param = false, $state = false)
  38. {
  39. $send = array();
  40. $send['i'] = $id;
  41. $send['t'] = $method;
  42. $send['s'] = $start;
  43. $send['e'] = $end;
  44. $send['a'] = $app;
  45. $send['p'] = $param;
  46. if ($state == false) {
  47. $result = Dever::daemon(self::url($send), 'main');
  48. } else {
  49. $result = callAction($send);
  50. }
  51. return $result;
  52. }
  53. static public function url($send)
  54. {
  55. $send = base64_encode(json_encode($send));
  56. $url = 'lib/core.call?param=' . $send;
  57. return $url;
  58. }
  59. public function call_api()
  60. {
  61. $send = json_decode(base64_decode(Dever::input('param')), true);
  62. $result = callAction($send);
  63. if (isset($result)) {
  64. print_r($result);
  65. die;
  66. }
  67. return;
  68. }
  69. }