如何检查在Ubuntu Linux 12.04 LTS中启用/禁用了哪些PHP扩展?

PHP*_*ver 60 php linux php-extension ubuntu-12.04

我在我的本地机器上使用Ubuntu Linux 12.04 LTS.我很久以前在我的机器上安装了LAMP.现在我想启用以下PHP扩展:

  1. php_zip
  2. php_xml
  3. php_gd2

首先,我想检查是否启用了这些PHP扩展.我搜索了很多关于如何检查已安装/启用的PHP扩展,但每次我发现如何在Ubuntu Linux上安装这些扩展时.那么有人可以告诉我如何在Ubuntu Linux 12.04 LTS中检查启用/禁用的PHP扩展?提前致谢.

Wer*_*ner 134

检查已安装的php模块和软件包

除了跑步

php -m
Run Code Online (Sandbox Code Playgroud)

要获取已安装的php 模块列表,您可能会发现在Ubuntu中获取当前安装的php 列表很有帮助:

sudo dpkg --get-selections | grep -v deinstall | grep php
Run Code Online (Sandbox Code Playgroud)

这很有用,因为Ubuntu 通过提供php 模块.

然后,您可以从可用的Ubuntu php 软件包中进行选择来安装所需的模块,您可以通过运行来查看这些软件包:

sudo apt-cache search php | grep "^php5-"
Run Code Online (Sandbox Code Playgroud)

或者,对于Ubuntu 16.04及更高版本:

sudo apt-cache search php | grep "^php7"
Run Code Online (Sandbox Code Playgroud)

正如您所提到的,有关您可能需要的软件包实际安装的大量信息,因此我不会在此详细介绍.

相关:启用/禁用已安装的php模块

已安装的模块可能已被禁用.在这种情况下,它在运行时不会显示php -m,但会显示在已安装的Ubuntu软件包列表中.

可以通过作为包的一部分的php5enmod工具(phpenmod在后来的发行版上)启用/禁用模块php-common.

Ubuntu 12.04:

符号链接已启用的模块 /etc/php5/conf.d

Ubuntu 12.04 :( PHP 5.4+)

启用已安装的模块:

php5enmod <modulename>
Run Code Online (Sandbox Code Playgroud)

禁用已安装的模块:

php5dismod <modulename>
Run Code Online (Sandbox Code Playgroud)

Ubuntu 16.04(php7)及更高版本:

启用已安装的模块:

phpenmod <modulename>
Run Code Online (Sandbox Code Playgroud)

禁用已安装的模块:

phpdismod <modulename>
Run Code Online (Sandbox Code Playgroud)

重新加载Apache

记得在启用/禁用后重新加载Apache2:

service apache2 reload
Run Code Online (Sandbox Code Playgroud)


Tah*_*rar 26

要检查是否启用了此扩展,您可以创建一个php文件,info.php然后在那里编写以下代码:

<?php 
echo "GD: ", extension_loaded('gd') ? 'OK' : 'MISSING', '<br>';
echo "XML: ", extension_loaded('xml') ? 'OK' : 'MISSING', '<br>';
echo "zip: ", extension_loaded('zip') ? 'OK' : 'MISSING', '<br>';
?>
Run Code Online (Sandbox Code Playgroud)

而已.


The*_*Kid 7

您可以通过终端查看哪些模块(已编译)可用 php -m


geo*_*eoB 7

也许查看(编译和)加载哪些扩展(不在 cli 中)的最简单方法是让服务器运行以下命令:

<?php
$ext = get_loaded_extensions();
asort($ext);
foreach ($ext as $ref) {
    echo $ref . "\n";
}
Run Code Online (Sandbox Code Playgroud)

PHP cli 不一定加载相同的扩展。