定義済みの全ての関数を配列で返す

# get_defined_functions

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

get_defined_functions — 定義済みの全ての関数を配列で返す

### 説明

function get_defined_functions(bool `$exclude_disabled` = `true`): array

すべての定義済み関数を配列で返します。

### パラメータ

`exclude_disabled`

  無効な関数を戻り値から除外するかどうかを指定します。 PHP 8.0.0 以降は、このパラメーターを使っても何も起きなくなっています。

### 戻り値

この関数は、組込 (内部) 関数およびユーザー定義関数を共に含む定義済み の全ての関数のリストを有する多次元配列を返します。内部関数は、 $arr["internal"]、ユーザー定義関数は $arr["user"] によりアクセス可能となります (以下の例を参照ください)。

### 変更履歴

バージョン | 説明
--- | ---
8.5.0 | `exclude_disabled` は、推奨されなくなりました。 使っても効果がないためです。
8.0.0 | `exclude_disabled` のデフォルト値が、 `false` から `true` に変更されました。 しかし、無効にされた関数はコンパイル時に関数テーブルから削除されるため、 この変更によって何かが起こることはありません。
7.0.15, 7.1.1 | `exclude_disabled` パラメータが追加されました。

### 例

例1 get_defined_functions() の例

    <?php
    function myrow($id, $data)
    {
        return "<tr><th>$id</th><td>$data</td></tr>\n";
    }

    $arr = get_defined_functions();

    print_r($arr);
    ?>

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

    Array
    (
        [internal] => Array
            (
                [0] => zend_version
                [1] => func_num_args
                [2] => func_get_arg
                [3] => func_get_args
                [4] => strlen
                [5] => strcmp
                [6] => strncmp
                ...
                [750] => bcscale
                [751] => bccomp
            )

        [user] => Array
            (
                [0] => myrow
            )

    )

### 参考

- function_exists() - 指定した関数が定義されている場合に true を返す
- get_defined_vars() - 全ての定義済の変数を配列で返す
- get_defined_constants() - すべての定数の名前とその値を連想配列として返す
- get_declared_classes() - 定義済のクラスの名前を配列として返す

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open