【PHP入門】get_declared_classes()関数で定義済みクラスの一覧を取得する方法
get_declared_classes()関数とは
get_declared_classes()関数は、現在のスクリプト内で定義されているすべてのクラス名を配列として返します。この関数を利用することで、PHPに組み込まれた内部クラスや、拡張モジュールによって読み込まれたクラス、さらにユーザーが定義したクラスの一覧を簡単に確認できます。デバッグ時や、特定のクラスが既に存在するかどうかを確認したい場合に便利です。
構文
get_declared_classes (void)
パラメータ
void − 引数は不要です。パラメータを指定せずに呼び出します。
戻り値
現在のスクリプトで宣言されているクラス名を要素とする配列を返します。返される配列には、PHP本体に組み込まれた標準クラスだけでなく、require や include で読み込んだファイル内で定義されたユーザー定義クラスも含まれます。
使用例
以下にget_declared_classes()関数の基本的な使用例を示します。
<?php
print_r(get_declared_classes());
?>
出力
上記のコードを実行すると、定義済みクラス名の一覧が次のように出力されます。なお、出力内容はPHPのバージョンや読み込み済みの拡張モジュールによって異なります。
Array
(
[0] => stdClass
[1] => Exception
[2] => ErrorException
[3] => Error
[4] => ParseError
[5] => TypeError
[6] => ArgumentCountError
[7] => ArithmeticError
[8] => DivisionByZeroError
[9] => Closure
[10] => Generator
[11] => ClosedGeneratorException
[12] => DateTime
[13] => DateTimeImmutable
...
[63] => ArrayObject
[64] => ArrayIterator
...
[90] => PDOException
[91] => PDO
[92] => PDOStatement
...
[103] => mysqli
[104] => mysqli_result
[105] => mysqli_stmt
)
出力に含まれる主なクラス群
stdClass − PHPの汎用的な空クラスです。
Exception / Error系 − Exception、TypeError、DivisionByZeroErrorなど、例外・エラー処理に関わるクラスです。
Closure / Generator − 無名関数やジェネレータに関連するクラスです。
DateTime系 − DateTime、DateTimeImmutable、DateIntervalなど、日付・時刻操作用のクラスです。
Reflection系 − ReflectionClass、ReflectionMethodなど、リフレクションAPI関連のクラスです。
SPL系 − ArrayObject、SplStack、SplQueueなど、標準ライブラリ(SPL)のデータ構造クラスです。
PDO / mysqli系 − データベース接続関連のクラスで、対応する拡張モジュールが有効な場合のみ含まれます。
注意点
ユーザー定義クラスは、そのクラスが実際に宣言された後にのみ配列へ含まれます。条件分岐の中でクラスを定義したり、オートローダーや require で動的にファイルを読み込んだりしている場合は、get_declared_classes() を呼び出すタイミングに注意してください。また、返される一覧は実行環境ごとに変わるため、特定のクラスの存在確認には class_exists() 関数と組み合わせて使うのが効果的です。
-
PHPのlog()関数とは?自然対数の計算方法と使い方を解説
定義と使い方log() 関数は、数値の自然対数(natural logarithm)を計算します。対数とは、指数関数の逆演算のことです。たとえば 102=100 という関係は「log10100=2」と表せます。自然対数はオイラー数 e を底として計算され、PHP では定義済み定数 M_E によって e の値(2.7182818284590452354)が提供されています。具体例を挙げると、exp(4.60517018599)=100(つまり e4.60517018599=100)が成り立つため、loge100=4.60517018599 となります。PHP では、この自然対数(loge)を l
-
PHPのlcg_value()関数とは?乱数生成の基本と使い方を解説
lcg_value()関数の定義と使い方lcg_value()関数は、0から1までの範囲でランダムな数値(浮動小数点数)を生成するPHP組み込み関数です。「LCG」とは「線形合同法(Linear Congruential Generator)」の略称です。この手法は、不連続な区分線形方程式を用いて擬似乱数列を計算するアルゴリズムで、擬似乱数生成アルゴリズムの中でも最も古くから知られているものの一つです。構文lcg_value ( void ) : floatパラメータこの関数は引数を受け取りません。戻り値lcg_value()関数は、0.0以上1.0以下の範囲にある擬似乱数のfloat値を返し