クラスのインスタンスを作成したり、そのクラスで静的関数を使用したりするのではなく、そのクラスのグローバル シングルトンでメソッドを呼び出す既存のコードが多数あります。
例 (stringclass.php):
class String {
function endsWith($str, $search) {
return substr($str, -strlen($search)) == $search;
}
}
$STRING_OBJECT = new String();
次に、これを次のように使用します。
include_once("stringclass.php");
if ($STRING_OBJECT->endsWith("Something", "thing")) {
echo "It's there\n";
}
これは関数を呼び出すあまり賢明な方法ではないことはわかっていますが、これらのシングルトンを使用するすべてのコードを変更することなく、オートローダーを使用して適切なクラスを含めるのを忘れているすべての場所を修正できるかどうか疑問に思っていました. . 宣言されていないグローバルの使用を検出し、参照されていたグローバルの名前に基づいて正しいクラス ファイルをインクルードします。