関数の概要
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拡張だけを取得できる柔軟性も持っています。
