Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP Redis无效的数据库索引_Php_Redis_Predis_Phpredis - Fatal编程技术网

PHP Redis无效的数据库索引

PHP Redis无效的数据库索引,php,redis,predis,phpredis,Php,Redis,Predis,Phpredis,我正在连接到Redis实验室,以便将Redis用于我们的应用程序 以下是我的配置: $conf=[ 'scheme'=>'tcp', 'host'=>'ec2.cloud.redislabs.com', 'port'=>12860, 'database'=>'selector', 'password'=>'redispassword' ]; 然后我这样做来加载predis库: require "lib/predis/autoload.php"; 之后我

我正在连接到Redis实验室,以便将Redis用于我们的应用程序

以下是我的配置:

$conf=[
 'scheme'=>'tcp',
 'host'=>'ec2.cloud.redislabs.com',
 'port'=>12860,
 'database'=>'selector',
 'password'=>'redispassword'
];
然后我这样做来加载predis库:

require "lib/predis/autoload.php";
之后我会这样做:

$client = new Predis\Client($conf);
然后我尝试运行一个命令:

$client->hset('comments',"comment:1","{json_encoded_data}");
这就是我收到的错误:

PHP Fatal error:  Uncaught exception 'Predis\Connection\ConnectionException' with message '`SELECT` failed: ERR invalid DB index [tcp://cloud.redislabs.com:12860]' in /redis/lib/predis/src/Connection/AbstractConnection.php:155
我在网上查看过,人们说我应该将数据库设置为0,但是如果我这样做了,我该如何使用我选择的数据库


不确定在这里做什么。

主机
参数用于实例端点:

RedisLabs只允许每个实例使用一个数据库,因此在
数据库
参数中使用
0
不会有问题:

这正是为什么我们的每个Redis云实例 允许只使用一个数据库(默认的0号数据库)。 这确保了我们服务中的任何两个数据库都不会竞争 在单个线程的资源上事实上,尝试使用任何 使用我们的服务的0以外的数据库应产生错误。


很高兴我能帮忙。谢谢你替我回答这个问题:)@ItamarHaber没问题。干得好!