【问题标题】:How to check extensions are enabled in PHP.ini via PHP CODE如何通过 PHP CODE 检查 PHP.ini 中是否启用了扩展
【发布时间】:2016-07-07 13:48:57
【问题描述】:

我想通过 PHP 代码检查 php.ini 中的 geo_ip 扩展

但我不知道,如何检查?

是否有任何解决方案可用于检查 php.ini 中的扩展是否启用。

提前致谢。

【问题讨论】:

标签: php php-extension


【解决方案1】:

你需要使用SPL的extension_loaded函数

$sExtensionName = 'geoip';
if (!extension_loaded($sExtensionName)) {
    exit("Error extension {$sExtensionName} not loaded");
}

参考function.extension-loaded.php

【讨论】:

    【解决方案2】:

    我不确定你所说的通过 PHP 代码是什么意思。

    如果您尝试在不使用终端/SSH 或任何命令的情况下检查 Web 服务器中启用的 PHP 扩展,那么您可以尝试使用浏览器进行检查。

    创建一个 PHP 文件(扩展名为 .php 的文件)。例如checkEnabledExtension.php

    现在编辑文件并添加以下代码并保存:

    <?php
    
    $extensionName = "mysqli"; // replace mysqli by the extension name your want to check. for example: $extensionName = "geoip"; I am not sure about the name of the geo_ip extension.
    echo $extensionName;
    if(extension_loaded($extensionName)) {  // check extension_loaded() in PHP manual for details
        echo ": is Enabled."; // if the extension is enabled this block will run
    } else {
        echo ": is NOT Enabled."; // this block will run if the extension is not enabled
    }
    
    ?>
    

    现在将文件上传到您的 Web 根目录。例如:如果你的域名是example.com,那么上传到example.com的web root/public_html

    现在在您的浏览器中转到domain.com/checkEnabledExtension.php

    就是这样。您将看到扩展是否启用。

    查看所有已启用扩展程序的列表:

    checkEnabledExtension.php 文件中使用此 PHP 代码来获取所有启用的 php 扩展的列表,而不是检查单个。使用与上述相同的程序,只需使用这些代码:

    <?php
    
    print "<pre>"; print_r(get_loaded_extensions()); print "</pre>"; // this will print a list of all enabled PHP extension 
    
    ?>
    

    祝你好运

    【讨论】:

      猜你喜欢
      • 2018-01-21
      • 2012-02-11
      • 2014-09-19
      • 2021-07-03
      • 1970-01-01
      • 1970-01-01
      • 2013-01-20
      • 2017-10-18
      • 1970-01-01
      相关资源
      最近更新 更多