まず、背景を少し。私が働いている会社は、すべてのページに含まれる大規模な関数/クラス ライブラリを使用しています。何千、何千行もの関数があり、その 90% はおそらくページ上で呼び出されることさえありません。
サーバーの負荷を少し軽減するために、私はよりスマートなライブラリ設定を試してきました。この目的のために、ファイル全体を分類されたライブラリ ファイル (つまり、sql.functions.php、date.functions.php など) に分割しました。
残念ながら、すべてのページにすべてのファイルを含めることはまったく役に立ちません。ファイルを選択的に含めることはほとんど不可能であり、エラーが発生しやすくなります。
私が探しているのは___autoload()
、未知のクラスが開始された場合にそれを見つけようとして、特定の名前のファイルを自動的に検索する PHP の機能に似たセットアップです。
<?php
function ___autoload($class_name) {
require_once($class_name.'.class.php');
}
?>
ただし、この関数は関数呼び出しでは機能せず、クラスのみで機能します。
未定義の関数 (つまりhtml_insert_button();
) を呼び出すときに、名前付き関数ライブラリを自動的に検索して含めるように PHP に指示する方法はありますか?
(上記の場合、html_functions.php
関数のプレフィックスを共有しているため、ロードする必要があります)