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应用程序来获取Web服务器的状态信息
Oct 09 PHP
第二节--PHP5 的对象模型
Nov 16 PHP
简单示例AJAX结合PHP代码实现登录效果代码
Jul 25 PHP
PHP 循环列出目录内容的函数代码
May 26 PHP
PHP5中虚函数的实现方法分享
Apr 20 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
PHP屏蔽关键字实现方法
Nov 17 PHP
PHP如何读取由JavaScript设置的Cookie
Mar 22 PHP
微信第三方登录(原生)demo【必看篇】
May 26 PHP
PHP ADODB实现分页功能简单示例
May 25 PHP
PHP封装XML和JSON格式数据接口操作示例
Mar 06 PHP
PHP与Web页面的交互示例详解一
Aug 04 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函数篇详解十进制、二进制、八进制和十六进制转换函数说明
2011/12/05 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
2013/06/07 PHP
php文件读取方法实例分析
2015/06/20 PHP
CI框架入门之MVC简单示例
2016/11/21 PHP
手把手教你自己写一个js表单验证框架的方法
2010/09/14 Javascript
顶部缓冲下拉菜单导航特效的JS代码
2013/08/27 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
JavaScript判断变量是对象还是数组的方法
2014/08/28 Javascript
浅谈javascript的调试
2015/01/28 Javascript
jQuery实现仿Alipay支付宝首页全屏焦点图切换特效
2015/05/04 Javascript
探讨:JavaScript ECAMScript5 新特性之get/set访问器
2016/05/05 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
解决VUEX刷新的时候出现数据消失
2017/07/03 Javascript
Three.js实现绘制字体模型示例代码
2017/09/26 Javascript
node.js实现为PDF添加水印的示例代码
2018/12/05 Javascript
js中async函数结合promise的小案例浅析
2019/04/14 Javascript
使用axios请求时,发送formData请求的示例
2019/10/29 Javascript
JS实现关闭小广告特效
2021/01/29 Javascript
实例讲解React 组件
2020/07/07 Javascript
dataframe设置两个条件取值的实例
2018/04/12 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
python将视频转换为全字符视频
2019/04/26 Python
python使用html2text库实现从HTML转markdown的方法详解
2020/02/21 Python
Django使用rest_framework写出API
2020/05/21 Python
Python利用matplotlib绘制散点图的新手教程
2020/11/05 Python
linux系统下pip升级报错的解决方法
2021/01/31 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
使用HTML5的链接预取功能(link prefetching)给网站提速
2012/12/13 HTML / CSS
详解使用双缓存解决Canvas clearRect引起的闪屏问题
2019/04/29 HTML / CSS
不遵守课堂纪律的检讨书
2014/09/24 职场文书
师范生见习报告范文
2014/11/03 职场文书
离婚协议书范文2015
2015/01/26 职场文书
打架检讨书范文
2015/01/27 职场文书
欠条范文
2015/07/03 职场文书
六一儿童节致辞
2015/07/31 职场文书
OpenCV-Python实现轮廓的特征值
2021/06/09 Python