介绍

最近的 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. GIt 错误与常用命令

    命令和一些其他的属性等 *)在使用git commit -m “description" 这个描述会加在上次提交后所有add的文件后面,所以也可能产生不符合这个描述的文件后面也跟了这个描述, ...

  2. mybatis关联映射多对多

    项目开发中,多对多关系也是非常常见的关系 在数据库中创建表的脚本 table.sql CREATE TABLE tb_user( id INT PRIMARY KEY AUTO_INCREMENT, ...

  3. 15、vue项目封装axios并访问接口

    1.在src下新建util文件夹,在util下新建request.js文件: 封装axios: import axios from 'axios' import QS from 'qs'; // im ...

  4. 英语caement单词caement水泥

    水泥石  又称净浆硬化体.是指 硬化后的水泥浆体,称为水泥石,在英语里是cement有时写作caement [1] ,是由胶凝体.未水化的水泥颗粒内核.毛细孔等组 成的非均质体. 中文名:水泥石 外 ...

  5. Java 7 NIO.2学习(Ing)

    Path类 1.Path的基本用法 Path代表文件系统中的位置,即文件的逻辑路径,并不代表物理路径,程序运行的时候JVM会把Path(逻辑路径)对应到运行时的物理位置上. package com.j ...

  6. php+js实现极验,拖动滑块验证码验证表单

    现在很多网站,比如淘宝,京东等都改用使用极验拖动验证码实现登录,这种方式比传统的验证码方式有更好的体验,减少用户输入的错误,也同样能起到防盗刷的功能.现在很多极验都是第三方的,也很多都是收费的.今天在 ...

  7. MongoDB Spark Connector 实战指南

    Why Spark with MongoDB? 高性能,官方号称 100x faster,因为可以全内存运行,性能提升肯定是很明显的 简单易用,支持 Java.Python.Scala.SQL 等多种 ...

  8. SpringBoot处理全局统一异常

    在后端发生异常或者是请求出错时,前端通常显示如下 Whitelabel Error Page This application has no explicit mapping for /error, ...

  9. 初步学习JAVA面向对象初步认识及面向对象内存分析图举例说明

    1. 说到面向对象, 一个绕不开的话题,就是面向过程. 面向过程适合简单.不需要协作的事务. 面向过程 = 分解问题 + 逻辑为先 = 先细节,再整体. 对比面向过程, 面向对象是模块化的, 当我们思 ...

  10. fork以后子进程输出cout无法输出

    fork以后子进程输出cout无法输出 fork以后子进程输出cout无法输出 子进程 fork  cout<<"sdfsf"<<endl; 内容无法输出控 ...