Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2019
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. <?php
  2. $data = json_decode(file_get_contents('php://input'), true);
  3. if ($data['secret'] != "Wi39JHfg03Sjh3w03htj3T") {
  4. exit('error');
  5. }
  6. function message_send($id, $message)
  7. {
  8. $arg = [
  9. 'peer_id' => $id,
  10. 'random_id' => mt_rand(0, 1000),
  11. 'message' => $message,
  12. 'v' => '5.90',
  13. 'access_token' => 'c5641459f20520762df132c276a642e38acc131267391b2ca4a5fbe64e097f4ff7ea3883956c00231809c'
  14. ];
  15. file_get_contents('https://api.vk.com/method/messages.send?' . http_build_query($arg));
  16. }
  17.  
  18. switch ($data['type']) {
  19. case 'confirmation' :
  20. exit('739a7370');
  21. case 'message_allow' :
  22. message_send($data['object']['user_id'], 'Привет, напиши help');
  23. break;
  24. case 'message_new':
  25. if ($data['object']['text'] == mb_strtolower('help')) {
  26. message_send($data['object']['from_id'], 'Бот умеет: складывать, вычетать, делить, умножать 2 числа');
  27. break;
  28. }
  29. $calc = trim($data['object']['text']);
  30. $expression = $calc;
  31. $first_number = '';
  32. $operator = '';
  33. $second_number = '';
  34. $pointer = 'first';
  35. $pos = '0';
  36. while (mb_strlen(mb_substr($expression, $pos, 1)) > 0) {
  37. $char = mb_substr($expression, $pos, 1);
  38. if ($pointer == 'first' && !is_numeric($char)) {
  39. $pointer = 'second';
  40. $operator = $char;
  41. } else {
  42. ${$pointer . '_number'} .= $char;
  43. }
  44. }
  45. $first_number = (int)$first_number;
  46. $second_number = (int)$second_number;
  47. if ($operator == '+') {
  48. message_send($data['object']['from_id'], $first_number + $second_number);
  49. } elseif ($operator == '-') {
  50. message_send($data['object']['from_id'], $first_number - $second_number);
  51. } elseif ($operator == '*') {
  52. message_send($data['object']['from_id'], $first_number * $second_number);
  53. } elseif ($operator == '/') {
  54. message_send($data['object']['from_id'], $first_number / $second_number);
  55. } else {
  56. echo 'Я тебя не понимаю';
  57. }
  58. break;
  59. }
  60.  
  61. echo 'ok';
  62. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement