如何在Ubuntu 20.04| 18.04上安装PHP 8.0

时间:2020-02-23 14:38:44  来源:igfitidea点击:

PHP是一款流行的脚本语言,用于最初由RASMUS LERDORF于1994年的RASMUS LERDORF创建的Web开发。
创建的PHP脚本可以在Linux,MacOS,Windows和许多其他UNIX系统上执行,提供PHP已安装PHP。

在本文中,我们将在Ubuntu 20.04上解释PHP 8.0的安装Ubuntu 18.04 Linux系统。
在我们之前的教程中,我们捕获了8/7上Centos的PHP 8.0。
我们的上有许多其他教程有关如何在Ubuntu Linux机器上安装和使用其他版本的PHP。

PHP 8的官方发布将于2017年11月26日。
这是一个新的主要版本,具有许多新功能和性能改进。
我们还应该预期新的破坏更改,这意味着可能需要在PHP上运行的代码中的一些修改。
使用PHP 8的一些很好的新功能是JIT编译器,名为Arguments,Union类型,属性,还有很多。

第1步:系统更新

通过运行下面的命令将所有系统包更新为最新。

sudo apt update
sudo apt -y upgrade

升级后重新启动很重要。

sudo systemctl reboot

第2步:添加ppa存储库

最新的PHP软件包可在ppa存储库中提供。
运行下面共享的命令将此存储库添加到Ubuntu系统。

sudo apt update
sudo apt install lsb-release ca-certificates apt-transport-https software-properties-common -y
sudo add-apt-repository ppa:ondrej/php

提示添加存储库时点击ENTER键:

Debian oldstable and stable packages are provided as well: https://deb.sury.org/#debian-dpa
You can get more information about the packages at https://deb.sury.org
IMPORTANT: The <foo>-backports is now required on older Ubuntu releases.
BUGS&FEATURES: This PPA now has a issue tracker:
https://deb.sury.org/#bug-reporting
CAVEATS:
1. If you are using php-gearman, you need to add ppa:ondrej/pkg-gearman
2. If you are using apache2, you are advised to add ppa:ondrej/apache2
3. If you are using nginx, you are advised to add ppa:ondrej/nginx-mainline
   or ppa:ondrej/nginx
PLEASE READ: If you like my work and want to give me a little motivation, please consider donating regularly: https://donate.sury.org/
WARNING: add-apt-repository is broken with non-UTF-8 locales, see
https://github.com/oerdnj/deb.sury.org/issues/56 for workaround:
# LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
 More info: https://launchpad.net/~ondrej/+archive/ubuntu/php
Press [ENTER] to continue or Ctrl-c to cancel adding it.

从更新输出,我们应该看到添加的存储库:

Hit:1 http://mirror.hetzner.de/ubuntu/packages focal InRelease
Hit:2 http://mirror.hetzner.de/ubuntu/packages focal-updates InRelease
Hit:3 http://mirror.hetzner.de/ubuntu/packages focal-backports InRelease
Hit:4 http://mirror.hetzner.de/ubuntu/packages focal-security InRelease
Get:5 http://ppa.launchpad.net/ondrej/php/ubuntu focal InRelease [23.9 kB]
Hit:6 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:7 http://archive.ubuntu.com/ubuntu focal InRelease
Hit:8 http://archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:9 http://archive.ubuntu.com/ubuntu focal-backports InRelease
Get:10 http://ppa.launchpad.net/ondrej/php/ubuntu focal/main amd64 Packages [74.8 kB]
Get:11 http://ppa.launchpad.net/ondrej/php/ubuntu focal/main i386 Packages [20.2 kB]
Get:12 http://ppa.launchpad.net/ondrej/php/ubuntu focal/main Translation-en [28.2 kB]
Fetched 147 kB in 1s (158 kB/s)
Reading package lists... Done

第3步:在Ubuntu 20.04上安装PHP 8 | 18.04

更新APT索引只是为了确保包装安装是可以的:

sudo apt update

然后在Ubuntu 20.04上安装PHP 8.0 | 18.04 Linux机器:

sudo apt install php8.0

点击Y键开始安装:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  apache2-bin libapache2-mod-php8.0 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libgdbm-compat4 libjansson4 liblua5.2-0 libmagic-mgc libmagic1
  libperl5.30 perl perl-modules-5.30 php-common php8.0-cli php8.0-common php8.0-opcache php8.0-readline
Suggested packages:
  apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser php-pear file perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl make
  libb-debug-perl liblocale-codes-perl
Recommended packages:
  apache2
The following NEW packages will be installed:
  apache2-bin libapache2-mod-php8.0 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libgdbm-compat4 libjansson4 liblua5.2-0 libmagic-mgc libmagic1
  libperl5.30 perl perl-modules-5.30 php-common php8.0 php8.0-cli php8.0-common php8.0-opcache php8.0-readline
0 upgraded, 20 newly installed, 0 to remove and 7 not upgraded.
Need to get 13.0 MB of archives.
After this operation, 78.4 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

在服务器上确认默认PHP版本:

$php -v
PHP 8.0.0RC3 (cli) (built: Oct 31 2017 17:06:41) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.0RC3, Copyright (c), by Zend Technologies

第4步:在Ubuntu 20.04上安装PHP 8扩展| 18.04

要在Ubuntu 20.04 |上安装PHP 8扩展| 18.04使用命令语法:

sudo apt install php8.0-<extension>

一些可用的扩展如下所示:

$sudo apt install php8.0
php8.0-amqp       php8.0-common     php8.0-gd         php8.0-ldap       php8.0-odbc       php8.0-readline   php8.0-sqlite3    php8.0-xsl
php8.0-apcu       php8.0-curl       php8.0-gmp        php8.0-mailparse  php8.0-opcache    php8.0-redis      php8.0-sybase     php8.0-yac
php8.0-ast        php8.0-dba        php8.0-igbinary   php8.0-mbstring   php8.0-pgsql      php8.0-rrd        php8.0-tidy       php8.0-yaml
php8.0-bcmath     php8.0-dev        php8.0-imagick    php8.0-memcached  php8.0-phpdbg     php8.0-smbclient  php8.0-uuid       php8.0-zip
php8.0-bz2        php8.0-ds         php8.0-imap       php8.0-msgpack    php8.0-pspell     php8.0-snmp       php8.0-xdebug     php8.0-zmq
php8.0-cgi        php8.0-enchant    php8.0-interbase  php8.0-mysql      php8.0-psr        php8.0-soap       php8.0-xhprof
php8.0-cli        php8.0-fpm        php8.0-intl       php8.0-oauth      php8.0-raphf      php8.0-solr       php8.0-xml

例子:

sudo apt install php8.0-cli php8.0-common php8.0-imap php8.0-redis php8.0-snmp php8.0-xml

使用相同的格式用于安装其他扩展。