SystemCarousel.php 1020 B

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='') {
  19. $val = json_encode([
  20. 'text'=> $text,
  21. 'uri' => $uri,
  22. ]);
  23. Redis::instance();
  24. return Redis::lPush(self::$KEY, $val);
  25. }
  26. public static function getFirst($n) {
  27. Redis::instance();
  28. $arrStr = Redis::lRange(self::$KEY, 0, $n) ?? '[]';
  29. $rv = [];
  30. foreach ($arrStr as $str) {
  31. $rv[] = json_decode($str);
  32. }
  33. return $rv;
  34. }
  35. public static function removeTrash($start) {
  36. Redis::instance();
  37. return Redis::lTrim(self::$KEY, 0, $start);
  38. }
  39. }