* 安装redis

到redis官网 https://redis.io/

wget http://download.redis.io/releases/redis-4.0.11.tar.gz

下载不了

git clone https://github.com/antirez/redis

 

参照runoob:PHP 使用 Redis

Windows:

- 假设redis已经安装好 服务启动

  https://github.com/ServiceStack/redis-windows

- xampp (php 7.1 x86 windows)

 

查看phpinfo (php 7.1 x86/x64 ts/uts vc14/vc15)


Zend Extension Build API320160303,TS,VC14
PHP Extension Build API20160303, TS,VC14

https://windows.php.net/downloads/pecl/releases/igbinary/2.0.6rc1/
https://windows.php.net/downloads/pecl/releases/redis/3.1.4/php_redis-3.1.4-7.2-ts-vc15-x86.zip

 

; php.ini
extension=php_igbinary.dll
extension=php_redis.dll

  

查看phpinfo 有redis扩展

test

<?php

$redis = new Redis();
$redis->connect('172.16.0.224', 16379);
$redis->auth("redis_requirepass");

echo "Connection to server sucessfully<br />";
//设置 redis 字符串数据
$redis->set("tutorial-name", "Redis tutorial");
// 获取存储的数据并输出
echo "Stored string in redis:: " . $redis->get("tutorial-name");

 

Mac:

下载php-redis,地址:https://nodeload.github.com/nicolasff/phpredis/zip/master 这个版本太高

https://github.com/phpredis/phpredis/releases/tag/3.1.2

或者 git clone https://github.com/phpredis/phpredis

git branch -a

git checkout -b 分支名

wget https://codeload.github.com/phpredis/phpredis/zip/3.1.2 -O php-redis-3.1.2.zip

 

链接: https://pan.baidu.com/s/1-08Wb7TsigVa1fj9k_oByg 密码: ny9g

curl https://nodeload.github.com/nicolasff/phpredis/zip/master > phpredis-master.zip

mv ~/Downloads/phpredis-master.zip .

unzip phpredis-master.zip -d .

cd ./phpredis-master

phpize

若未安装autoconf,则会报错 $ brew install autoconf

./configure --with-php-config=`which php-config`

make

make test

sudo make install

Linux:

wget https://codeload.github.com/phpredis/phpredis/zip/3.1.2 -O php-redis-3.1.2.zip
unzip php-redis-3.1.2.zip -d .
./phpredis-3.1.2/
/opt/lampp/bin/phpize-7.3.7 
./configure --with-php-config="/opt/lampp/bin/php-config-7.3.7"
make -j4
sudo make install

 

sudo emacs /Applications/XAMPP/etc/php.ini

+++++++++++++++++++++++++++++++++

extension="redis.so"

================================

 

重启apahce后

php -m|grep redis

查看phpredis扩展是否开启。

配置php redis 扩展_redis

 test:

 

<?php

function ul($arList) {
    echo "<ul>";
    foreach ($arList as $el) {
        echo "<li>".htmlspecialchars($el)."</li>";
    }
    echo "</ul>";
}

$redis = new Redis();

$handle = $redis->connect("127.0.0.1", 16379);
$redis->auth("secret");

if (!$handle) {
  echo "<p>Conenct to redis failed!</p>";
}

echo "Connect to server successfull<br />";
echo "<pre>";
var_dump($handle);
echo "</pre>";

echo "<p>Server is running: ".$redis->ping()."</p>";

$redis->del("test:string");
$redis->set("test:string", "Redis Tutorial");
echo "Stored string in redis::".$redis->get("test:string")."<br />";

$redis->del("test:list");
$a = ["Redis", "MongoDB", "MySQL"];
array_walk($a, function($item, $key) use ($redis) {
    $redis->lpush("test:list", $item);
});

$arList = $redis->lrange("test:list", 0, 5);
ul($arList);

$keys = $redis->keys("test:*");
ul($keys);

 配置php redis 扩展_github_02

 

 常见的php版本对应的redis:

php5.6:

wget https://github.com/phpredis/phpredis/archive/3.1.2.zip

PHP session改为redis (默认的是文件)

//方式一,在php脚本中设置更改php会话写入方式
<?php
ini_set("session.save_handler","redis");
ini_set("session.save_path","tcp://127.0.0.1:6379");
//如果有密码
ini_set("session.save_path","tcp://127.0.0.1:6379?auth=password");
?>

 

//修改php的配置文件php.ini
session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"
//如果有密码
session.save_path = "tcp://127.0.0.1:6379?auth=password"