Epay.php 969 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace Library;
  3. class Epay
  4. {
  5. private $pid;
  6. private $key;
  7. private $url;
  8. public function __construct($url, $pid, $key)
  9. {
  10. $this->pid = $pid;
  11. $this->key = $key;
  12. $this->url = $url;
  13. }
  14. public function pay($params)
  15. {
  16. $params['pid'] = $this->pid;
  17. ksort($params);
  18. reset($params);
  19. $str = stripslashes(urldecode(http_build_query($params))) . $this->key;
  20. $params['sign'] = md5($str);
  21. $params['sign_type'] = 'MD5';
  22. return $this->url . '/submit.php?' . http_build_query($params);
  23. }
  24. public function verify($params)
  25. {
  26. $sign = $params['sign'];
  27. unset($params['sign']);
  28. unset($params['sign_type']);
  29. ksort($params);
  30. reset($params);
  31. $str = stripslashes(urldecode(http_build_query($params))) . $this->key;
  32. if ($sign !== md5($str)) {
  33. return false;
  34. }
  35. return true;
  36. }
  37. }