open source guy
open source guy

Reputation: 2787

How get all keys in redis using php redis?

I am using https://github.com/nicolasff/phpredis extension to access redis. I want to get all keys in redis from PHP code. I tried following code:

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$allKeys = $redis->keys('*');
print_r($allKeys); // nothing here

But following command in shell giving results:

127.0.0.1:6379> KEYS *
"kq92p7b5tf63tmk12v54373e03 hs7ep4lc2m6ci5kk5dosgpelg4 
pt7lfejenqbmmovjpmp9aojuf0 2p05gf20or6r5ee5i7sts90kn1 
cb1d6g3d3bvqetjfmkmaurmpp3"

I am able to set key and data in following manner from PHP script:

$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->set(session_id(), json_encode(array('uname'=>'messi fan')));

How to get KEYS * from redis using phpredis ?

Upvotes: 10

Views: 52222

Answers (3)

Siva
Siva

Reputation: 405

$redis = new Redis();
$redis->connect('xxxxxx', 6379); // use your Host from Redis desktop Manager - connection
$redis->auth('xxxxxx'); // use your Auth from Redis desktop Manager - connection
$allKeys = $redis->keys('*');
print_r($allKeys); // nothing here

Upvotes: 5

Agis
Agis

Reputation: 33626

There is nothing wrong with your code. You are doing it correctly: $redis->keys('*') retrieves all the keys.

The result:

"kq92p7b5tf63tmk12v54373e03 hs7ep4lc2m6ci5kk5dosgpelg4 
pt7lfejenqbmmovjpmp9aojuf0 2p05gf20or6r5ee5i7sts90kn1 
cb1d6g3d3bvqetjfmkmaurmpp3"

is in fact the key that you set when you did:

 $redis->set(session_id(), json_encode(array('uname'=>'messi fan')));

So session_id() returned the value:

kq92p7b5tf63tmk12v54373e03 hs7ep4lc2m6ci5kk5dosgpelg4 
pt7lfejenqbmmovjpmp9aojuf0 2p05gf20or6r5ee5i7sts90kn1 
cb1d6g3d3bvqetjfmkmaurmpp3

therefore this became the name of the key that you set.

Upvotes: 9

Jignesh Patel
Jignesh Patel

Reputation: 1022

Try this

 $redis->get('key');

Upvotes: -9

Related Questions