get_loaded_extensions

関数の概要

get_loaded_extensions は、現在のPHP環境で読み込まれている拡張モジュール(extension)の一覧を取得する関数です。PHPがどの拡張機能を有効にしているかを確認したい場合に便利で、環境設定やトラブルシューティング時によく使われます。

パラメータの説明

  • zend_extensions(bool型、オプション):
    true を指定すると、Zend拡張(Zend Engineに関する拡張)だけを返します。false または省略した場合は、通常のPHP拡張モジュールが返されます。

戻り値

読み込まれている拡張機能名を格納した配列を返します。配列の各要素は拡張の名前(文字列)です。拡張が読み込まれていない場合は空の配列が返されます。

使用例

基本的な使い方

<?php
$extensions = get_loaded_extensions();
print_r($extensions);
?>

この例では、読み込まれている全てのPHP拡張モジュールの名前を配列として取得し、print_r()で出力しています。

Zend拡張のみを取得する

<?php
$zendExtensions = get_loaded_extensions(true);
print_r($zendExtensions);
?>

trueを渡すことで、Zend拡張のみが取得できます。例えば、デバッグ用のZend拡張が読み込まれているか確認したいときに使います。

読み込まれている拡張をHTMLでリスト表示

<?php
$extensions = get_loaded_extensions();
echo '<ul>';
foreach ($extensions as $ext) {
    echo '<li>' . htmlspecialchars($ext, ENT_QUOTES, 'UTF-8') . '</li>';
}
echo '</ul>';
?>

この例では、取得した拡張名をHTMLのリスト形式で表示します。ユーザーに分かりやすく一覧を見せたい場合に便利です。

関連する関数

  • extension_loaded() – 指定した拡張モジュールが読み込まれているかチェックする
  • phpinfo() – PHPの環境情報を詳細に表示する
  • dl() – 拡張モジュールを動的にロードする(非推奨の環境もあり)

まとめ

get_loaded_extensionsは、PHPの読み込まれている拡張モジュールを手軽に取得できる便利な関数です。環境構築や問題解析で活用できるため、PHP開発者にとって知っておいて損はありません。引数を使い分けることで、通常の拡張やZend拡張だけを取得できる柔軟性も持っています。