php 连接redis
1.windows
完整教程:http://www.php.cn/jishu/php/412784.html
下载地址:https://windows.php.net/downloads/pecl/releases/redis/
(1)进入下载地址,选择自己的版本(很重要)
php_redis-3.1.4-7.0-ts-vc14-x64.zip
php_redis-3.1.4 redis版本,这个随你
7.0 php版本。这个必须要和你环境的版本对应
ts 你版本后面是否带有nts,如果没带就是ts,如果带了就是nts
vc14 phpinfo里面看
x64 phpinfo里面看
下载好后解压。复制里面的php_redis.dll文件到 D:\wamp64\bin\php\php7.0.10\ext (找到你的php路径下的ext)里面
(2)修改 php.ini
找到 extension 的位置,并且添加
extension=php_redis.dll
重启wamp
(3)在phpinfo里面,看看redis是否存在
(4)测试是否能用
<?php $redis = new Redis(); $redis->connect('127.0.0.1', 6379); $count = $redis->exists('count') ? $redis->get('count') : 1; echo $count; $redis->set('count', ++$count);
若刷新一次,数字加一,则说明连接成功
2.richarvey/nginx-php-fpm 镜像安装redis
镜像:https://hub.docker.com/r/richarvey/nginx-php-fpm/
php版本:FROM php:7.1.11-fpm-alpine
下载镜像并启动容器:
docker run -d richarvey/nginx-php-fpm
进入容器:
docker exec -it 08f7c84d5b84 bash
1 php -m|grep redis
2 mkdir -p /usr/src/php/ext/redis
3 curl -L https://github.com/phpredis/phpredis/archive/3.0.0.tar.gz | tar xvz -C /usr/src/php/ext/redis --strip 1
4 echo 'redis' >> /usr/src/php-available-exts
5 docker-php-ext-install redis
6 php -m|grep redis
手工验证没问题,将命令写入dockerfile:
RUN mkdir -p /usr/src/php/ext/redis \
&& curl -L https://github.com/phpredis/phpredis/archive/$PHPREDIS_VERSION.tar.gz | tar xvz -C /usr/src/php/ext/redis --strip 1 \
&& echo 'redis' >> /usr/src/php-available-exts \
&& docker-php-ext-install redis
参考:
https://stackoverflow.com/questions/31369867/how-to-install-php-redis-extension-using-the-official-php-docker-image-approach
以下为memcached 的参考:
memcached 扩展:
参考:https://stackoverflow.com/questions/40894385/how-can-i-install-the-php-memcached-extension-on-dockers-php7-alpine-image
安装memcached扩展:
ENV MEMCACHED_DEPS zlib-dev libmemcached-dev cyrus-sasl-dev
RUN apk add --no-cache --update libmemcached-libs zlib
RUN set -xe \
&& apk add --no-cache --update --virtual .phpize-deps $PHPIZE_DEPS \
&& apk add --no-cache --update --virtual .memcached-deps $MEMCACHED_DEPS \
&& pecl install memcached \
&& echo "extension=memcached.so" > /usr/local/etc/php/conf.d/docker-php-ext-memcached.ini \
&& rm -rf /usr/share/php7 \
&& rm -rf /tmp/* \
&& apk del .memcached-deps .phpize-deps