介绍

最近的 PHP 7.3.0 已经在 2018 年12月6日 发布 GA,大家已经可以开始第一时间体验新版本了,这里先放出 PHP7.3 安装的教程以便大家升级。

适用系统: Ubuntu 18.04 LTS / Ubuntu 16.04 LTS / Ubuntu 14.04 LTS / Debian 9 stretch / Debian 8 jessie

更新内容

PHP7.3 的主要更新内容:

Implemented Flexible Heredoc And Nowdoc Syntaxes
Allow a Trailing Comma in Function Calls
JSON_THROW_ON_ERROR
list() Reference Assignment
is_countable Function
array_key_first(), array_key_last()
Argon2 Password Hash Enhancements
Deprecations

PHP 7.3 并没有带来特别激进的更新,同一天发布更新的 WordPress 5.0 也是第一时间带来了对 PHP7.3 的支持。

当然了 PHP 7.3 也带了性能提升,相比早期的 PHP 7.0 有了近 22% 的性能提升。同时 PHP 5.6 和 7.0 都即将失去 PHP 社区官方的支持,所以也是建议大家能尽快的升级到最新版本。

安装 PHP

Ondřej Surý 的 PHP PPA 为 Ubuntu 18.04/16.04/14.04 提供了 PHP7.2 版本,同时也有为 Debian 9/8 提供 PHP7.2 版本,因此 Ubuntu 是源于 Debian 所以基本可以通用,同时维护难度较低,软件源安装的 PHP 默认以 Unix Socket 的状态运行在 /run/php/php7.3-fpm.sock,比使用 TCP 以 localhost:9000 的方式性能更好。

值得一提的是 Ondřej Surý 是 Debian PHP 软件源的官方维护者之一,所以说稳定性和安全性基本上不是问题。

由于 PHP 7.3 是新出的版本势必有不少的兼容性问题,特别是国产的程序建议等待开发者通知再进行升级,一些 PECL 扩展可能也不会及时适配最新版。建议更新前提前做好备份准备。目前已知的是 WordPress 5.0 版本开始支持 PHP 7.3。

相关教程推荐

添加软件源

Ubuntu

安装软件源拓展工具:

apt -y install software-properties-common apt-transport-https lsb-release ca-certificates

添加 Ondřej Surý 的 PHP PPA 源,需要按一次回车:

add-apt-repository ppa:ondrej/php  

更新软件源缓存:

apt update

Debian

安装软件源拓展工具:

apt -y install software-properties-common apt-transport-https lsb-release ca-certificates

添加 GPG

wget -O /etc/apt/trusted.gpg.d/php.gpg https://mirror.xtom.com.hk/sury/php/apt.gpg

添加 sury 软件源

sh -c 'echo "deb https://mirror.xtom.com.hk/sury/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'   

更新软件源缓存:

apt-get update

安装软件

安装 PHP7.3:

apt install php7.3-fpm php7.3-mysql php7.3-curl php7.3-gd php7.3-mbstring php7.3-xml php7.3-xmlrpc php7.3-zip php7.3-opcache -y

设置 PHP

安装完成后,编辑 /etc/php/7.3/fpm/php.ini 替换换 ;cgi.fix_pathinfo=1 为 cgi.fix_pathinfo=0 快捷命令:

sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php/7.3/fpm/php.ini 

管理 PHP

安装好了先重启一下!

systemctl restart php7.3-fpm

更多操作:

 
systemctl restart php7.3-fpm #重启
 
systemctl start php7.3-fpm #启动
 
systemctl stop php7.3-fpm #关闭
 
systemctl status php7.3-fpm #检查状态

查看 PHP

验证一下是否安装成功:

 
root@mf88.biz-service:~# php -v
 
PHP 7.3.0-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Dec 6 2018 20:24:55) ( NTS )
 
Copyright (c) 1997-2018 The PHP Group
 
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
 
with Zend OPcache v7.3.0-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

更新 PHP

运行下面的命令系统就会更新所有可以更新的软件包括 PHP

 
apt update
 
apt upgrade -y

安装更多组件

上面的一条命令安装 PHP 只是安装了部分 PHP 拓展,更多的软件可见:

 
root@mf88.biz-service:~# apt-cache search php7.3
 
php-amqp - AMQP extension for PHP
 
php-apcu - APC User Cache for PHP
 
php-apcu-bc - APCu Backwards Compatibility Module
 
php-ds - PHP extension providing efficient data structures for PHP 7
 
php-gearman - PHP wrapper to libgearman
 
php-geoip - GeoIP module for PHP
 
php-gmagick - Provides a wrapper to the GraphicsMagick library
 
php-gnupg - PHP wrapper around the gpgme library
 
php-http - PECL HTTP module for PHP Extended HTTP Support
 
php-igbinary - igbinary PHP serializer
 
php-imagick - Provides a wrapper to the ImageMagick library
 
php-mailparse - Email message manipulation for PHP
 
php-memcache - memcache extension module for PHP
 
php-memcached - memcached extension module for PHP, uses libmemcached
 
php-mongodb - MongoDB driver for PHP
 
php-msgpack - PHP extension for interfacing with MessagePack
 
php-oauth - OAuth 1.0 consumer and provider extension
 
php-propro - propro module for PHP
 
php-radius - radius client library for PHP
 
php-raphf - raphf module for PHP
 
php-redis - PHP extension for interfacing with Redis
 
php-rrd - PHP bindings to rrd tool system
 
php-smbclient - PHP wrapper for libsmbclient
 
php-solr - PHP extension for communicating with Apache Solr server
 
php-ssh2 - Bindings for the libssh2 library
 
php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP
 
php-tideways - Tideways PHP Profiler Extension
 
php-uploadprogress - file upload progress tracking extension for PHP
 
php-uuid - PHP UUID extension
 
php-yac - YAC (Yet Another Cache) for PHP
 
php-yaml - YAML-1.1 parser and emitter for PHP
 
php-zmq - ZeroMQ messaging bindings for PHP
 
php-xdebug - Xdebug Module for PHP
 
php-lua - PHP Embedded lua interpreter
 
libapache2-mod-php7.3 - server-side, HTML-embedded scripting language (Apache 2 module)
 
libphp7.3-embed - HTML-embedded scripting language (Embedded SAPI library)
 
php7.3-bcmath - Bcmath module for PHP
 
php7.3-bz2 - bzip2 module for PHP
 
php7.3-cgi - server-side, HTML-embedded scripting language (CGI binary)
 
php7.3-cli - command-line interpreter for the PHP scripting language
 
php7.3-common - documentation, examples and common module for PHP
 
php7.3-curl - CURL module for PHP
 
php7.3-dba - DBA module for PHP
 
php7.3-dev - Files for PHP7.3 module development
 
php7.3-enchant - Enchant module for PHP
 
php7.3-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
 
php7.3-gd - GD module for PHP
 
php7.3-gmp - GMP module for PHP
 
php7.3-imap - IMAP module for PHP
 
php7.3-interbase - Interbase module for PHP
 
php7.3-intl - Internationalisation module for PHP
 
php7.3-json - JSON module for PHP
 
php7.3-ldap - LDAP module for PHP
 
php7.3-mbstring - MBSTRING module for PHP
 
php7.3-mysql - MySQL module for PHP
 
php7.3-odbc - ODBC module for PHP
 
php7.3-opcache - Zend OpCache module for PHP
 
php7.3-pgsql - PostgreSQL module for PHP
 
php7.3-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
 
php7.3-pspell - pspell module for PHP
 
php7.3-readline - readline module for PHP
 
php7.3-recode - recode module for PHP
 
php7.3-snmp - SNMP module for PHP
 
php7.3-soap - SOAP module for PHP
 
php7.3-sqlite3 - SQLite3 module for PHP
 
php7.3-sybase - Sybase module for PHP
 
php7.3-tidy - tidy module for PHP
 
php7.3-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
 
php7.3-xmlrpc - XMLRPC-EPI module for PHP
 
php7.3-zip - Zip module for PHP
 
php7.3-xsl - XSL module for PHP (dummy)
 
php7.3 - server-side, HTML-embedded scripting language (metapackage)

在 Ubuntu/Debian 下安装 PHP7.3 教程的更多相关文章

  1. ubuntu系统下安装pyspider:搭建pyspider服务器新手教程

    首先感谢“巧克力味腺嘌呤”的博客和Debian 8.1 安装配置 pyspider 爬虫,本人根据他们的教程在ubuntu系统中进行了实际操作,发现有一些不同,也出现了很多错误,因此做此教程,为新手服 ...

  2. 分布式进阶(二)Ubuntu 14.04下安装Dockr图文教程(一)

    当前,完全硬件虚拟化技术(KVM.Xen.Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等.有时候对用户来说,完全的硬件虚 ...

  3. Ubuntu下安装JDK详细教程

    Ubuntu下安装JDK详细教程 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ Ubuntu版本:Ubuntu-12.04.5-desktop-i386 ...

  4. Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法

    Ubuntu下安装JDK图文教程详解 jdk-java6-30 .bin 的处理方法: https://blog.csdn.net/mingjie1212/article/details/485250 ...

  5. Debian下安装Firefox与flash简介

    Debian下安装Firefox与flash简介 由于Debian在Firefox的版权上出现了问题,导致官方发布的Debian系统不能使用默认的Firefox浏览器,最后官方重编的Firefox改名 ...

  6. Ubuntu 16.04安装Matlab 2016b教程

    由于代码需要依赖Linux环境,只好尝试着装MATLAB,然而各种问题接踵而至,开始了由MATLAB引发的三天Linux探寻之旅-- 下载Matlab 2016b for Linux https:// ...

  7. Linux(Ubuntu)下安装NodeJs

    用以下命令来升级系统,并且安装一些Node.JS必要的包. Linux(Ubuntu)下安装NodeJs 安装nodeJS之前,如果没有安装g++ make libssl-dev等, 1.更新系统和依 ...

  8. Redhat/Ubuntu/Windows下安装Docker

    Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...

  9. pycharm 4.5在debian下安装

    1.去官网下载linux下的Tar包,下载后解压. 2.直接进入解压后的folder里面找bin下面的pycharm.sh,执行后发现没有任何反应. 3.查询资料发现是因为pycharm需要sun j ...

随机推荐

  1. 当前标识(IIS APPPOOL\DefaultAppPool)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的写访问权限

    找到或增加这个目录,给他增加权限.

  2. vue条形码生成插件vue-barcode

    更详细的请查阅官方文档 https://github.com/lindell/vue-barcode vue-barcode是JsBarcode的一个简单包装.所以在使用时的配置属性需要在JsBarc ...

  3. 在微信小程序中使用redux

    本文主要讲述,在微信小程序中如何使用redux DEMO 需要解决的问题 如何在小程序中引入redux状态管理库,及它相关的插件? 微信小程序没有清晰的异步api,便于thunkMiddleware处 ...

  4. 在safari上,解决fixed失效问题

    一个页面中有头部.底部和中间内容区域,底部固定在屏幕底端. 头部header 内容main 底部footer 方法一.在main上使用fixed定位,加上overflow-y属性. .main { p ...

  5. 全网最全Selenium相关资源汇总

    官网: Selenium官网:https://docs.seleniumhq.org Selenium github: https://github.com/SeleniumHQ/selenium 文 ...

  6. echarts设置横坐标的信息竖向排放

    需要在xAxis 中添加 axisLabel , demo案例如下: 设置成每行两个文字竖向排放. xAxis : [ { type : 'category', data : this.xAxis, ...

  7. 利用 AWS DMS 在线迁移 MongoDB 到 Amazon Aurora

    将数据从一种数据库迁移到另一种数据库通常都非常具有挑战性,特别是考虑到数据一致性.应用停机时间.以及源和目标数据库在设计上的差异性等因素.这个过程中,运维人员通常都希望借助于专门的数据迁移(复制)工具 ...

  8. Jmeter场景设置与监听

    目录 Jmeter场景设置 场景运行 Jmeter测试监控 Samples:取样器运行次数(提交了多少笔业务). Jmeter场景设置 场景的概念: 场景是用来尽量真实模拟用户操作的工作单元,场景设计 ...

  9. python 读写excel(xls格式)

    import xlrd #导入模块 from xlutils.copy import copy #导入copy模块 rb = xlrd.open_workbook(r"e:\额度导入表.xl ...

  10. Centos 7.3 镜像制作

    1.在KVM环境上准备虚拟机磁盘 [root@localhost ~]# qemu-img create -f qcow2 -o size=50G /opt/CentOS---x86_64_50G.q ...