问题标签 [phpredis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - phpredis:运行脚本调用未定义函数 new Redis() 时出错
环境:
- CentOS 6.5
- php5.5.3 / php-fpm5.5.3
- nginx 1.0.15
- php-redis 2.2.8
还在 php.ini 中添加了 extension_dir 和扩展设置
然后重启php-fpm & nginx的服务
我已经确认 redis 已在 phpinfo() 中启用/加载
步:
我正在尝试像这样运行 php 脚本
得到错误:
但是当我尝试在 php Interactive shell 模式下运行相同的命令时,它运行良好。
为什么?
更新:
我已经测试了这样的脚本:
然后我已经加载了扩展redis
它显示类 Redis 存在但仍然出现错误
添加dl("redis.so");
和输出:
php - 在 PHPRedis 会话上设置过期
我让 Redis 为我通过 PHPRedis 访问的几个子域运行共享会话存储。会话 cookie 的生命周期很长,因此用户不必经常登录,但我发现我必须大约每半小时登录一次。
检查 Redis 实例显示每个键的 TTL 默认设置得非常低(大约 1500 秒)。PHPRedis 文档有这样的说法:
会话的生命周期以秒表示,并存储在 INI 变量“session.gc_maxlifetime”中。您可以使用 ini_set() 更改它。
目前尚不清楚这是指 cookie 的生命周期还是 Redis 密钥的 TTL。我将session.cookie_lifetime
和都设置session.gc_maxlifetime
为 100000 秒来运行测试,但看起来新的会话条目仍然以 Redis 中的 1500 秒 TTL 开始。
直接和Redis交互的时候如何设置TTL已经很清楚了,但是我不知道如何通过PHPRedis的会话管理器来设置这个值。有小费吗?
ubuntu-14.04 - 无法使用 Ubuntu 14.04 在 PHP7 上安装 PHPREDIS
我在 ubuntu 14.04 上使用 PHP7。这是来自终端的我的 PHP 版本信息(使用命令 PHP -v)。
我从 php7 分支(https://github.com/phpredis/phpredis/tree/php7)下载了 phpredis 并按照自述文件中提到的以下命令进行安装。
但是,我在执行命令后出现以下错误make && make install
我还在 PHPREDIS github 存储库 ( https://github.com/phpredis/phpredis/issues/958 ) 上创建了一个关于此的问题。
不知道这里出了什么问题。
php - phpredis 中的 redis.conf 在哪里
我是 phpredis 的新手,很困惑 redis.conf 文件在 nicolasff 的存储库中的位置。它不在配置文件中。当我通过 tar.gz 安装 redis 时,有一个名为 redis.conf 的文件很有帮助。
修改配置文件后是否需要重新制作redis?
这是存储库的 github 链接。 https://github.com/nicolasff/phpredis
php - 无法订阅 Redis 频道 Laravel 5.2
我正在关注 Laravel 办公室 Redis 指南,但我遇到了一些问题 https://laravel.com/docs/5.2/redis#pubsub
在控制台中运行“-> php artisan redis:subscribe”时创建命令后,出现以下错误
我无法听 Redis Chanel。
Redis 发布通道方法工作正常。要检查这一点。在控制台中,我输入“-> redis-cli”,然后“订阅 mychannel”。在刷新浏览器时,我在控制台中获取发布数据。
我无法通过 Laravel 订阅。
我也尝试过使用通配符
但浏览器不断加载,我没有得到任何数据。我也尝试在控制器中创建一个方法
这个 subscribeChannel 方法给了我以下错误
我在 config/database.php 中的配置如下
寻求帮助谢谢
redis - redis cli删除多个key
我已经在 centos 中安装了 Redis,并且我有多个这样的 redis 键,
如何Product:*:*
使用 CLI 删除所有内容?
Redis 版本:3.2.4 [我猜是最新的]
谢谢!
redis - phpredis调试方法不起作用
我最近将 php redis 版本更新为 3.0.0-rc1 之后 $data = $redis->debug('Key'); var_dump($data); 给出输出 bool(false) 是调试方法被禁用或需要做任何事情来使该方法工作
redis - Redis 阿拉伯语解码
我使用带有 PHP 的 Redis,带有 phpRedis 连接器。当我用阿拉伯语保存一个单词时,我无法检索这个单词,它返回编码值。
在 redis 中,如果我连接,问题就解决了: >redis-cli --raw
这里的例子:
amic:/var/www/core-bitercash$ redis-cli 127.0.0.1:6379> 设置 xx جيد OK 127.0.0.1:6379> 获取 xx "\xd8\xac\xd9\x8a\xd8\xaf"
ami:/var/www/core-bitercash$ redis-cli --raw 127.0.0.1:6379> 获取 xx جيد 127.0.0.1:6379>
是的,它可以工作,但是对于 phpRedis 是行不通的。是回报:جيد
redis 中保存的值。
我不知道如何连接 phpRedis lib 的 --raw 选项或如何解码 php.ini 中的文本“جيؔ。
php - Redis 存储在数组中
我有多个 redis 实例,我想通过 php 访问它们。我正在使用 phpredis 7。由于我有多个函数可以连接到不同的服务器,因此我将它们存储在一个数组中。
该数组包含:
现在我想像这样使用它:
我已经尝试过,但没有真正发生。有人可以提示我哪里错了吗?
php - 检查redis中是否存在密钥的最快方法 - php
有没有比EXISTS
, 更快的方法来检查 redis 中是否存在密钥?
我的问题是,我在 redis 中有超过 100 万条记录,我需要进行 key_exists 检查。这应该在 10 毫秒内发生。
有什么想法吗?