17

我不熟悉 Suhosin(从未使用过),但如果可能的话,我需要使用 PHP 检查它是否已安装。这是我正在编写的安装程序的一部分。谢谢。

4

4 回答 4

19

要检测 Suhosin 扩展,请使用 extension_loaded(),无论它是动态加载还是静态编译:

extension_loaded('suhosin');

要检测 Suhosin-Patch,请检查是否持续存在:

constant("SUHOSIN_PATCH");
于 2010-08-01T23:00:44.727 回答
7

只需在您的文档根目录中编写一个 php 文件,就像 <?php phpinfo(); ?> 它会打印与 php 安装相关的所有信息,只需找到安装在您服务器上的“suhosin”块,您就可以找到为它设置的所有值的块。

于 2011-05-30T10:31:59.900 回答
3
extension_loaded('suhosin');

用于extension_loaded.

如果扩展未加载,它可能仍可通过以下方式获得dl

if (!extension_loaded('suhosin')) {
    if (!dl('suhosin.so')) {
        // Extension not loaded.
        return false;
    }
}

// Extension loaded.
return true;
于 2010-08-01T22:39:03.560 回答
2

您可以测试是否为 Suhosin 设置了配置打开:

$isSuhosinInstalled = ini_get('suhosin.session.max_id_length') !== '';
于 2010-08-01T23:15:14.423 回答