Base.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace lc\wechat\wxpay\database;
  3. use lc\helpers\Helper;
  4. use lc\wechat\wxpay\base\WxPayConfig;
  5. /**
  6. * 数据对象基础类,该类中定义数据类最基本的行为,包括:计算/设置/获取签名、输出xml格式的参数、从xml读取数据对象等.
  7. */
  8. class Base
  9. {
  10. protected $values = [];
  11. /**
  12. * @desc 签名,本函数不覆盖sign成员变量,如要设置签名需要调用setSign方法赋值
  13. *
  14. * @return string
  15. */
  16. public function setSign()
  17. {
  18. $sign = Helper::makeSign($this->values, WxPayConfig::$key);
  19. $this->values['sign'] = $sign;
  20. return $sign;
  21. }
  22. /**
  23. * 获取签名,详见签名生成算法的值
  24. */
  25. public function getSign()
  26. {
  27. return $this->values['sign'];
  28. }
  29. /**
  30. * 判断签名,详见签名生成算法是否存在.
  31. *
  32. * @return bool
  33. */
  34. public function isSignSet()
  35. {
  36. return array_key_exists('sign', $this->values);
  37. }
  38. /**
  39. * @desc 获取设置的值
  40. */
  41. public function getValues()
  42. {
  43. return $this->values;
  44. }
  45. }