apache_get_modules

(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)

apache_get_modulesロードされた Apache モジュールのリストを取得する

説明

apache_get_modules(): array

ロードされた Apache モジュールのリストを取得します。

パラメータ

この関数にはパラメータはありません。

戻り値

ロードされた Apache モジュールの配列 array を返します。

例1 apache_get_modules() の例

<?php
print_r
(apache_get_modules());
?>

上の例の出力は、 たとえば以下のようになります。

Array
(
    [0] => core
    [1] => http_core
    [2] => mod_so
    [3] => sapi_apache2
    [4] => mod_mime
    [5] => mod_rewrite
)

add a note add a note

User Contributed Notes 6 notes

up
10
hello at octopuslabs dot io
4 years ago
apache_get_modules() is only available when the PHP is installed as a module and not as a CGI == It doesn't work with php-fpm.
up
11
Anonymous
10 years ago
<?php
function apache_module_exists($module)
{
    return
in_array($module, apache_get_modules());
}
?>
up
1
Vlad Alexa Mancini mancini at nextcode dot org
19 years ago
this function can be used on older php versions using something like "/etc/httpd/httpd.conf" as $fname

<?php

function get_modules ($fname){
   if (
is_readable($fname)){
     
$fcont = file($fname);
      if (
is_array($fcont)){
          foreach (
$fcont as $line){
              if (
preg_match ("/^LoadModule\s*(\S*)\s*(\S*)/i",$line,$match)){
                 
$return[$match[2]] = $match[1];
              }
          }
      }
   }
   return
$return;
}

?>
up
0
christian at zp1 dot net
9 months ago
/**
* Check if a Apache module is loaded (even if php run as fcgi or cgi )
*
* @param string $module
* @return bool
*/
public static function apache_check_module(string $module): bool
{
    $module  = ($module ? strval(value: $module) : '');
    if (function_exists('apache_get_modules')  && !empty($module)) {
        if (in_array(needle: $module, haystack: apache_get_modules())) {
            return TRUE;
        }
    } else if (!empty(shell_exec(command: 'apache2ctl -M | grep \'' . $module . '\''))) {
        return TRUE;
    } else {
        return FALSE;
    }
}
up
-15
Anonymous
11 years ago
function apache_module_exists($module_name)
{
    $modules = apache_get_modules();
    return ( in_array($module_name, $modules) ? true : false );
}

var_dump(apache_module_exists('mod_headers'));
up
-32
fengdingbo at gmail dot com
11 years ago
<?php
function apache_module_exists($module_name)
{
   
$modules = apache_get_modules();
    foreach (
$modules as $module)
    {
        if (
$module == $module_name)
            return
true;
    }
   
    return
false;
}
var_dump(apache_module_exists('mod_headers'));
To Top