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 相关文章推荐
用php实现百度网盘图片直链的代码分享
Nov 01 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
Oct 16 PHP
php调用nginx的mod_zip模块打包ZIP文件
Jun 11 PHP
Yii框架关联查询with用法分析
Dec 02 PHP
PHP屏蔽关键字实现方法
Nov 17 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
Feb 08 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
PHP实现字母数字混合验证码功能
Jul 11 PHP
详解将数据从Laravel传送到vue的四种方式
Oct 16 PHP
关于laravel模板中生成URL的几种模式总结
Oct 18 PHP
PHPstorm启用自动换行的方法详解(IDE)
Sep 17 PHP
PHP获取学生成绩的方法
Nov 17 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
php教程之魔术方法的使用示例(php魔术函数)
2014/02/12 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
PHP保存Base64图片base64_decode的问题整理
2019/11/04 PHP
javascript设计模式 接口介绍
2012/07/24 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
一个通过script自定义属性传递配置参数的方法
2014/09/15 Javascript
Javascript中的arguments对象
2016/06/20 Javascript
jquery实现跳到底部,回到顶部效果的简单实例(类似锚)
2016/07/10 Javascript
深入分析javascript中的错误处理机制
2016/07/17 Javascript
json定义及jquery操作json的方法
2016/10/03 Javascript
关于预加载InstantClick的问题解决方法
2017/09/12 Javascript
React Native使用Modal自定义分享界面的示例代码
2017/10/31 Javascript
解决vue路由后界面没有变化,但是链接有的问题
2018/09/01 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
2018/11/13 Javascript
JS图片预加载三种实现方法解析
2020/05/08 Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
2020/07/21 Javascript
vue绑定class的三种方法
2020/12/24 Vue.js
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
Python3操作SQL Server数据库(实例讲解)
2017/10/21 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
python3中os.path模块下常用的用法总结【推荐】
2018/09/16 Python
使用Python实现在Windows下安装Django
2018/10/17 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
大专自我鉴定范文
2013/10/23 职场文书
旅游管理毕业生自荐信
2013/11/05 职场文书
千元咖啡店的创业计划书范文
2013/12/29 职场文书
餐厅总经理岗位职责
2013/12/31 职场文书
2014年五四青年节活动方案
2014/03/29 职场文书
2014年师德师风学习材料
2014/05/16 职场文书
学习张林森心得体会
2014/09/10 职场文书
Nginx中break与last的区别详析
2021/03/31 Servers
python 中的@运算符使用
2021/05/26 Python
详解Flask开发技巧之异常处理
2021/06/15 Python
Python Pandas读取Excel日期数据的异常处理方法
2022/02/28 Python