2015년 6월 11일, PHP 공식 웹사이트에서는 PHP7 첫 번째 버전의 알파 버전이 공식적으로 공개되었다고 발표했습니다.
PHP7 기능:
PHP 7.0.0 Alpha 1은 ZendEngine의 새 버전을 사용합니다. 많은 새로운 기능을 제공하는 엔진 기능 중 다음은 불완전한 목록입니다.
(1) 성능 향상: PHP7은 PHP5.6에 비해 성능이 두 배 향상되었습니다. 향상된 성능: PHP 7은 PHP 5.6
(2)보다 최대 2배 빠릅니다. 완전하고 일관된 64비트 지원. 일관된 64비트 지원
(3) 이전의 많은 치명적인 오류가 이제 예외 발생으로 변경되었습니다. 이제 많은 치명적인 오류가 예외입니다.
(4) 더 이상 지원되지 않는 일부 오래된 SAPI(서버 측 응용 프로그래밍 포트) 및 확장 기능을 제거했습니다. 오래되고 지원되지 않는 SAPI 및 확장을 제거
(5)하면 새로운 null 조인 연산자가 추가됩니다. Null 병합 연산자(??)
(6) 새로운 결합 비교 연산자가 추가되었습니다. 결합 비교 연산자(<=>)
(7) 새로운 함수 반환 유형 선언을 추가했습니다. 반환 유형 선언
(8) 새로 추가된 스칼라 유형 선언입니다. 스칼라 유형 선언
(9) 새로 추가된 익명 클래스입니다. 익명 클래스
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를 업그레이드하여 문제를 해결하세요. 다시 생성하려면 re2c 0.13.4 이상이 필요합니다. PHP
parsers.Error
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 Tutorial》
위 내용은 PHP7 설치 노트 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!