如何检查 Ubuntu 12.04 LTS 上是否安装了多个版本的 PHP?

How to check if there are multiple versions of PHP installed on Ubuntu 12.04 LTS?

如何知道我的系统中是否同时安装了 php5.3 和 php5.5?如何删除 php5.3(如果存在)并配置 Apache2 以使用 php5.5?

因为你有一个 Linux 环境,你可以 运行 在你的控制台上这样做:

locate bin/php

然后对于任何看起来像 PHP 二进制文件的东西,获取版本。以上对我的输出是:

/home/xx/Development/Personal/Project1/webapp/bin/phpunit
/home/xx/Development/Personal/Project1/webapp-backup/vendor/bin/phpunit
/home/xx/Development/Personal/Project2/app/vendor/bin/phpunit
/home/xx/php-threaded/bin/php
/home/xx/php-threaded/bin/php-cgi
/home/xx/php-threaded/bin/php-config
/home/xx/php-threaded/bin/phpize
/usr/bin/php
/usr/bin/php5
/usr/local/bin/php-cgi
/usr/local/bin/php-config
/usr/local/bin/php53
/usr/local/bin/phpize
/usr/sbin/php5dismod
/usr/sbin/php5enmod
/usr/sbin/php5query

其中,有一些看起来像 PHP 二进制文件。因此,让我们获取每个版本:

/home/xx/php-threaded/bin/php -v
/usr/bin/php -v
/usr/bin/php5 -v
/usr/local/bin/php53 -v

这将为您提供已安装的 PHP 版本。

我不会费心删除旧版本,它可能会删除停止工作的文件。您可以只配置控制台版本或 Apache 版本,以使用您想要的版本。


回答您的补充问题:您似乎已经按照 the instructions here 向您的 Ubuntu 版本添加了一个非官方存储库,因为标准存储库不支持 5.5。

我们一起发现让它工作的方法是首先将 Apache 从 2.2 升级到 2.4:

sudo apt-get upgrade apache2

应注意,此 可能会 导致需要进行一些虚拟主机修复,因为此版本中的某些 Apache 指令已更改。完成后,您可以获得 mod_php:

的新版本
sudo apt-get install libapache2-mod-php5

您可以在您的主机上运行:

find / -name php | grep bin

要检查您安装的版本类型:

cd /etc/php

在您的终端中转到 PHP 安装的配置文件夹,然后键入:

ls

输出将是与您计算机中安装的版本相对应的文件夹。在我的例子中,命令输出:

5.6 7.0 7.1

我使用以下命令查看 Ubuntu 中已安装的 php 版本:

sudo dpkg --list | grep ' php[0-9]\.[0-9] '

我使用以下命令查看 Ubuntu 中已安装的 PHP 版本:

sudo update-alternatives --list php

第二种方式进入php目录,其中所有PHP版本配置文件存储:

cd /etc/php 
dir 

输出:

 > 5.6  7.0  7.1

我一直在使用这个命令来查看 PHP 版本列表,以及将一个版本切换到另一个安装 PHP 版本。

sudo update-alternatives --config php

Get a list of all installed packages and filter installed PHP versions:

sudo apt list --installed 2>/dev/null | cut -d / -f 1 | grep ^php[0-9].[0-9]$;

sudo apt list --installed 2>/dev/null | cut -d / -f 1 | grep ^php[0-9].[0-9]$ | xargs;

if you really need to get only installed PHP versions without unnecessary.

sudo update-alternatives --list php;