编译安装PHP7并安装Redis扩展Swoole扩展
在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了
本php7是编译成fpm-php 使用的,
如果是apache那么编译参数应该为
--with-apxs2=/usr/local/apache/bin/apxs
编译安装php7
wget -c http://www.php.net/distributions/php-7.0.0.tar.gz
tar zxvf php-7.0.0.tar.gz
cd php-7.0.0
./configure \
--prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir \
--with-freetype-dir=/usr/local/freetype \
--with-jpeg-dir -\
-with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-mbstring \
--with-mcrypt \
--enable-ftp \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--with-gettext \
--disable-fileinfo \
--enable-opcache
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-production /usr/local/php7/etc/php.ini
cd ..
编译安装php7的redis扩展支持
wget -c https://github.com/phpredis/phpredis/archive/php7.zip
unzip php7.zip
cd phpredis-php7
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make
make install
cd ..
/usr/local/php7/etc/php.ini
中加入
extension=redis.so
编译安装php7的swoole
wget -c https://github.com/swoole/swoole-src/archive/swoole-1.7.21-stable.tar.gz
tar zxvf swoole-1.7.21-stable.tar.gz
cd swoole-src-swoole-1.7.21-stable/
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make
make install
cd ..
/usr/local/php7/etc/php.ini
中加入
extension=swoole.so
PHP7安装Redis非常的简单只需要几行命令就可以了,下面我们为各位介绍windows及linux中PHP7安装Redis的方法。linux中PHP7安装Redis扩展
1.依次执行
wget -c https://github.com/phpredis/phpredis/archive/php7.zip
unzip php7.zip
cd phpredis-php7
/YouPath/phpize
./configure --with-php-config=/YouPath/php-config
make
make install
2.加入php.ini
3.重启httpd
4.查看探针
windowsPHP7安装Redis扩展
这里提供php5.3版本的redis的php扩展压缩包(里面有个dll):https://github.com/nicolasff/phpredis/downloads
解压后把dll放到php的ext目录下,打开php.ini,增加一行:
extension=php_redis.dll
然后重启apache即可
例子
<?php
//获取投票的信息的ID
$aid = isset($_GET['aid']) ? ereg_replace("[^0-9]", "", $_GET['aid']) : 0;
//当前投票的数字,指的是在redis中的数据
$this_click_num = 0;
if($aid>2){
//设定写回的投票数的最大值,到了此值就写回mysql
$update_till_num = 50;
//创建redis对象
$r = new Redis();
$r->connect('127.0.0.1',6379);
//得到现在是第几个数据了
$this_click_num = $r->get('count_xin_newgame:'.$aid);
//点击数加1
$r->set('count_xin_newgame:'.$aid,$this_click_num+1);
if($this_click_num>=$update_till_num)
{
//如果点击数超过了设定数,那么就把数据写到mysql
if($this_click_num>$update_till_num)
require_once(dirname(__FILE__)."/db.php");
//更新数据库
$db->ExecuteNoneQuery(
"UPDATE `addonnewgame`
SET `game_num` = game_num + '{$update_till_num}'
WHERE `dede_addonnewgame`.`aid` ={$aid};"
);
//重置投票数目为0
$r->set('count_xin_newgame:'.$aid,0);
}
$r->setTimeout('count_xin_newgame:'.$aid,7*24*60*60);
exit($this_click_num);
}
?>
1.windows上安装php7 alpha只需要从官网上 http://windows.php.net/qa/ 下载然后直接配置就可以,如果你不会你可以下载 PHP Manager,直接配置就可以了。这个时候需要测试,打开命令行窗口,然后到你的 php7 目录下,php -m如果弹出如下的窗口
1111
这时候因为你缺少Visual C++ Redistributable Package for Visual Studio 2015你可以点击这里下载
http://www.microsoft.com/zh-CN/download/details.aspx?id=46881,安装后就可以了。
linux
Linux 和以前一样安装,但是你会发现php7 alpha并不和以前 dev 一样,少了--with-mysql的选项,也就是不加载这个扩展了,以后就用mysqli和Pdo吧
从官方下载安装包 https://downloads.php.net/~ab/
wget https://downloads.php.net/~ab/php-7.0.0alpha1.tar.gz
#解压
tar zxf php-7.0.0alpha1.tar.gz
#进入目录
cd php-7.0.0alpha1
#configure
--prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-pdo-mysql=/usr/local/mysql/ \
--with-iconv-dir \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-mbstring \
--with-mcrypt \
--enable-ftp \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip--enable-soap \
--without-pear \
--with-gettext \
--disable-fileinfo \
--enable-maintainer-zts
#编译安装
make ZEND_EXTRA_LIBS='-liconv' && make install
#配置
cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php7-fpm
cp php.ini-production /usr/local/php7/etc/php.ini
#然后在自己配置下php-fpm.conf
安装YAF
#下载
git clone https://github.com/laruence/php-yaf.git
cd php-yaf
#查看所有分支,这时候你就看到了php7的分支
git branch -a
git checkout -b php7 origin/php7
#开始编译安装
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make && make install
#配置
vim /usr/local/php7/etc/php.ini
#加入如下这行
extension = 安装完成显示的目录地址/yaf.so
mac os x 默认已经安装了php,但是开发系统中的一些常用的PHP扩展库是没有的,需要自己手动安装,现在记录一下这个,以备查询。
安装PHP扩展要求你的Mac系统已经安装了Xcode环境和命令行开发工具,如果还没安装,请先使用Shell安装
xcode-select --install
为了扩展管理方便,首先来安装pecl扩展管理器。
cd /usr/lib/php
sudo php install-pear-nozlib.phar
安装Redis、Memcache、Mongo等扩展。
sudo pecl install redis
sudo pecl install mongo
将扩展配置添加的php.ini文件中:
extension=mongo.so
extension=redis.so