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

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

  1. php_zip
  2. php_xml
  3. php_gd2

首先,我想检查这些PHP扩展是否启用。 我search了很多关于如何检查安装/启用的PHP扩展,但每次我发现如何在Ubuntu Linux上安装这些扩展。 那么有人可以让我知道我应该如何检查在Ubuntu Linux 12.04 LTS启用/禁用的PHP扩展? 提前致谢。

Solutions Collecting From Web of "如何检查在Ubuntu Linux 12.04 LTS中启用/禁用了哪些PHP扩展?"

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

除了跑步

 php -m 

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

 sudo dpkg --get-selections | grep -v deinstall | grep php 

这是有帮助的,因为Ubuntu通过软件包使php 模块可用。

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

 sudo apt-cache search php | grep "^php5-" 

或者,对于Ubuntu 16.04:

 sudo apt-cache search php | grep "^php7.0-" 

正如你所提到的,在你可能需要的软件包的实际安装方面有大量的信息可用,所以在这里我不会详细讨论。

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

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

Ubuntu 12.04:

启用已安装的模块:

 php5enmod <modulename> 

禁用已安装的模块:

 php5dismod <modulename> 

Ubuntu 16.04(php7):

启用已安装的模块:

 phpenmod <modulename> 

禁用已安装的模块:

 phpdismod <modulename> 

重新加载Apache

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

 service apache2 reload 

要检查这个扩展是否被启用,你可以创建一个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>'; ?> 

而已。

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

在搜索扩展中

/etc/php5/apache2/php.ini

有关php extensions等信息,现场。

  1. 创建一个新的文件,并将其命名为info.php (或其他一些name.php

  2. 写下这段代码:

      <?php phpinfo (); ?> 
  3. 将该文件保存在网站的root (主页)中

  4. 在浏览器中打开文件。 例如: yoursite.com/info.php将显示您网站上的所有php信息。