【问题标题】:Redis Laravel - strlen() expects parameter 1 to be string, array given [duplicate]Redis Laravel - strlen()期望参数1是字符串,给定数组[重复]
【发布时间】:2020-01-27 10:32:35
【问题描述】:

我正在尝试在 Redis 中缓存数据,但出现以下错误:

ErrorException: strlen() 期望参数 1 是字符串,给定数组 /home/mktplacemiddleware/demo/vendor/predis/predis/src/Connection/StreamConnection.php:390

以下是我正在尝试的代码:

Redis::set('CacheTest', $finalProduct); //$finalProduct is an Array

我正在使用:

  1. redis 5.5 版
  2. predis 1.1 版
  3. php 7.1 版
  4. laravel 流明 5.7

任何帮助将不胜感激。谢谢

【问题讨论】:

    标签: php laravel caching redis lumen


    【解决方案1】:

    您需要将数据存储在序列化或json中尝试如下:

    Redis::set('CacheTest', json_encode($finalProduct)); //$finalProduct is an Array
    

    并获得您需要解码价值

    的价值
    $data = Redis::get('CacheTest');
    dd(json_decode($data))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-12
      • 2016-10-10
      • 1970-01-01
      • 2018-02-22
      • 2018-11-10
      • 2017-08-08
      • 2017-09-23
      • 1970-01-01
      相关资源
      最近更新 更多