SystemCarousel.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace app\models\redis;
  3. use crmeb\utils\Redis;
  4. /**
  5. * Class SystemCarousel
  6. * @package app\models\redis
  7. */
  8. class SystemCarousel {
  9. protected static $KEY = 'sys:carousel';
  10. /*
  11. 格式:
  12. {
  13. "text": "<span style=\"color:2343;\"></span>",
  14. "uri": "page/boards",
  15. }
  16. uri 为客户端路由, 用于客户端跳转
  17. */
  18. public static function add($text, $uri='', $h5uri='') {
  19. $val = json_encode([
  20. 'id' => 0, // compatible
  21. 'info'=> $text,
  22. 'url' => $uri,
  23. 'wap_url' => $h5uri,
  24. 'show' => '2', // compatible
  25. ]);
  26. $redis = Redis::instance();
  27. return $redis->lpush(self::$KEY, $val);
  28. }
  29. public static function getFirst($n) {
  30. $arrStr = Redis::lRange(self::$KEY, 0, $n) ?? '[]';
  31. $rv = [];
  32. foreach ($arrStr as $str) {
  33. $rv[] = json_decode($str);
  34. }
  35. return $rv;
  36. }
  37. public static function removeTrash($start=10) {
  38. return Redis::lTrim(self::$KEY, 0, $start - 1);
  39. }
  40. }