0

複数の redis インスタンスがあり、php を介してそれらにアクセスしたいと考えています。私はphpredis 7を使用しています。異なるサーバーに接続するための複数の関数があるため、それらを配列に格納しました。

function ud_1() {
    $redis = new Redis();
    if ($redis->connect('127.0.0.1', 12341) == false)
        return "Cannot connect to redis(ud_1).";
    else
        return $redis;
    $type = $UD;
}
$red =[
    "ud_1" => ud_1(),
    "ud_2" => ud_2(),
    "ud_3" => ud_3()
];

配列には以下が含まれます。

array(3) { ["ud_1"]=> object(Redis)#1 (1) { ["socket"]=> resource(3) of type (Redis Socket Buffer) } ["ud_2"]=> object(Redis)#2 (1) { ["socket"]=> resource(5) of type (Redis Socket Buffer) } ["ud_3"]=> object(Redis)#3 (1) { ["socket"]=> resource(7) of type (Redis Socket Buffer) } } 

今、私はそれを次のように使いたいです:

$red[0]->set("key1", "value1");

試してみましたが、実際には何も起こりません。誰かが私がどこで間違っているのかヒントを教えてもらえますか?

4

1 に答える 1

1

配列に間違ってアクセスしているだけだと思います。連想配列があるように見えるので、キー名を使用してアクセスします。

$red['ud_1']->set("key1", "value1");
于 2016-12-18T22:34:55.340 に答える