PHP7.0安装笔记整理


Posted in PHP onAugust 28, 2015

2015年6月11日,PHP官网发布消息,正式公开发布PHP7第一版的alpha版本.

PHP7特性:

PHP 7.0.0 Alpha 1使用新版的ZendEngine引擎,带来了许多新的特性,以下是不完全列表:

(1)性能提升:PHP7比PHP5.6性能提升了两倍。 Improved performance: PHP 7 is up to twice as fast as PHP 5.6

(2)全面一致的64位支持。 Consistent 64-bit support

(3)以前的许多致命错误,现在改成抛出异常。Many fatal errors are now Exceptions

(4)移除了一些老的不在支持的SAPI(服务器端应用编程端口)和扩展。Removal of old and unsupported SAPIs and extensions

(5)新增了空接合操作符。The null coalescing operator (??)

(6)新增加了结合比较运算符。Combined comparison Operator (<=>)

(7)新增加了函数的返回类型声明。Return Type Declarations

(8)新增加了标量类型声明。Scalar Type Declarations

(9)新增加匿名类。Anonymous Classes

php7安装笔记整理

# 安装mcrypt

yum install -y php-mcrypt libmcrypt libmcrypt-devel

# 升级bison

cd /var/soft/
wget http://ftp.gnu.org/gnu/bison/bison-2.6.4.tar.gz
tar -xvzf bison-2.6.4.tar.gz 
cd bison-2.6.4
./configure
make && make install

# 升级re2c,解决You will need re2c 0.13.4 or later if you want to regenerate PHP

parsers.错误

cd /var/soft/
wget http://sourceforge.net/projects/re2c/files/re2c/0.13.5/re2c-0.13.5.tar.gz/download
tar zxf re2c-0.13.5.tar.gz && cd re2c-0.13.5
./configure
make && make install

编译PHP7

# 创建目录
mkdir -p /var/soft/php7
cd /var/soft/php7
# 下载源代码
git clone http://git.php.net/repository/php-src.git
cd php-src
./buildconf
# 配置参数
./configure --prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--with-mcrypt=/usr/include \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gd \
--with-iconv \
--with-zlib \
--enable-xml \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-ftp \
--enable-gd-native-ttf \
--with-openssl \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--without-pear \
--with-gettext \
--enable-session \
--with-curl \
--with-jpeg-dir \
--with-freetype-dir \
--enable-opcache
#################################################################################
# 编译安装php时出现 /encodings.c:101: undefined reference to `libiconv_close' 错误的解决方法
# 在装php时出现以下的错误:
# /root/Downloads/php-5.6.5/ext/xmlrpc/libxmlrpc/encodings.c:73: undefined reference to `libiconv_open'
# /root/Downloads/php-5.6.5/ext/xmlrpc/libxmlrpc/encodings.c:81: undefined reference to `libiconv'
# /root/Downloads/php-5.6.5/ext/xmlrpc/libxmlrpc/encodings.c:101: undefined reference to `libiconv_close'
# /root/Downloads/php-5.6.5/ext/xmlrpc/libxmlrpc/encodings.c:101: undefined reference to `libiconv_close'
# collect2: error: ld returned 1 exit status
# make: *** [sapi/cli/php] Error 1
# 根据php官网描述这是一个bug(https://bugs.php.net/bug.php?id=52611)。在configure以后要手动修改下Makefile文件,找到EXTRA_LIBS 在最后添加 -liconv 即可顺利通过
# (大约在Makefile文件的104)
# EXTRA_LIBS = -lcrypt -lz -lresolv -lcrypt -lrt -lmysqlclient -lmcrypt -lltdl -lpng -lz -ljpeg -lcurl -lz -lrt -lm -ldl -lnsl -lxml2 -lz -lm -ldl -lssl -lcrypto -lcurl -lxml2 -lz -lm -ldl -lfreetype -lmysqlclient -lz -lm -lssl -lcrypto -ldl -lxml2 -lz -lm -ldl -lxml2 -lz -lm -ldl -lcrypt -lxml2 -lz -lm -ldl -lxml2 -lz -lm -ldl -lxml2 -lz -lm -ldl -lxml2 -lz -lm -ldl -lssl -lcrypto -lcrypt -liconv
#################################################################################
# 编译安装
make && sudo make install

# 配置

cp php.ini-production /usr/local/php7/etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php7-fpm
chmod +x /etc/init.d/php7-fpm
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

# 配置opcache

vim /usr/local/php7/etc/php.ini
# 加入
zend_extension=/usr/local/php7/lib/php/extensions/no-debug-non-zts-20141001/opcache.so
# 启动
/etc/init.d/php7-fpm start

# 查看PHP版本

/usr/local/php7/bin/php -v

结果:

PHP 7.0.0-dev (cli) (built: Mar 3 2015 10:02:26) 
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies
  with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies

以上就是本文给大家分享的PHP7.0 安装笔记整理,希望对大家有所帮助。

PHP 相关文章推荐
加速XP搜索功能堪比vista
Mar 22 PHP
php下实现折线图效果的代码
Apr 28 PHP
解析PHP中DIRECTORY_SEPARATOR,PATH_SEPARATOR两个常量的作用
Jun 21 PHP
PHP实现取得HTTP请求的原文
Aug 18 PHP
thinkphp常见路径用法分析
Dec 02 PHP
php实现的mongodb操作类
May 28 PHP
常见PHP数据库解决方案分析介绍
Sep 24 PHP
如何解决PHP无法实现多线程的问题
Sep 25 PHP
网页的分页下标生成代码(PHP后端方法)
Feb 03 PHP
php遍历替换目录下文件指定内容的方法
Nov 10 PHP
php 中的closure用法详解
Jun 12 PHP
PHP Post获取不到非表单数据的问题解决办法
Feb 27 PHP
php中二维数组排序问题方法详解
Aug 28 #PHP
php页面,mysql数据库转utf-8乱码,utf-8编码问题总结
Aug 27 #PHP
PHP生成随机密码方法汇总
Aug 27 #PHP
windows下apache搭建php开发环境
Aug 27 #PHP
php给图片添加文字水印方法汇总
Aug 27 #PHP
微信公众平台开发之配置与请求
Aug 26 #PHP
php基础教程
Aug 26 #PHP
You might like
Apache服务器无法使用的解决方法
2013/05/08 PHP
windows7下安装php的php-ssh2扩展教程
2014/07/04 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
Ajax::prototype 源码解读
2007/01/22 Javascript
使用Math.floor与Math.random取随机整数的方法详解
2013/05/07 Javascript
JavaScript使用setInterval()函数实现简单轮询操作的方法
2015/02/02 Javascript
javascript感应鼠标图片透明度显示的方法
2015/02/24 Javascript
JavaScript操作DOM元素的childNodes和children区别
2015/04/01 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
2015/11/29 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
微信端开发--登录小程序步骤
2017/01/11 Javascript
使用jQuery操作DOM的方法小结
2017/02/27 Javascript
angularJS之$http:与服务器交互示例
2017/03/17 Javascript
bootstrap弹出层的多种触发方式
2017/05/10 Javascript
vue.js如何将echarts封装为组件一键使用详解
2017/10/10 Javascript
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
element ui 表格动态列显示空白bug 修复方法
2018/09/04 Javascript
axios异步提交表单数据的几种方法
2019/08/11 Javascript
vue下的@change事件的实现
2019/10/25 Javascript
Vue实现多标签选择器
2019/11/28 Javascript
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
python使用matplotlib绘制折线图教程
2017/02/08 Python
python 调用win32pai 操作cmd的方法
2017/05/28 Python
python查找指定文件夹下所有文件并按修改时间倒序排列的方法
2018/10/21 Python
Python assert语句的简单使用示例
2019/07/28 Python
PyCharm2020.3.2安装超详细教程
2021/02/08 Python
SHEIN台湾:购买最新流行女装服饰
2019/05/18 全球购物
澳大利亚美容产品及化妆品在线:Activeskin
2020/06/03 全球购物
通息工程毕业生自荐信
2013/10/16 职场文书
电信营业员自我评价分享
2014/01/17 职场文书
五一劳动节活动记录
2014/03/23 职场文书
公司捐款倡议书
2014/05/14 职场文书
技术员岗位职责
2015/02/04 职场文书
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
vue实现input输入模糊查询的三种方式
2022/08/14 Vue.js