require_once
が関数内で呼び出された場合、インクルードされたファイルはグローバル変数スコープを拡張しないようです。 どのようにrequire_once
関数内からグローバルスコープへのファイルですか?関数内のグローバルスコープへのrequire_once
私は何をしようとしていることは、いくつかの動的モジュールローダーです:
function projects_init()
{
...
foreach ($projects as $p) {
require_once($p['PHPFile']);
$init_func = $p['init'];
if ($init_func)
$init_func();
}
}
それはrequire_once
そのように使用することができない場合、このための最も簡単な解決策は何ですか? (重いフレームワークは不要です)
EDIT:PHP 5.2でも動作するはずです。
可能な複製[require_once()のスコープをグローバルに明示的に設定する方法はありますか?](http://stackoverflow.com/questions/8973664/is-there-a-way-to-set-the -scope-of-require-once-globally-once-globally) – Dunhamzzz
インクルードされたファイルにグローバルを設定するか、オートローダー、リフレクションなどで、やりたいこととは別のやりかたをすることができますあなたはもっと多くの情報を私たちに提供することができ、何か良いものを考えることができるかもしれません。私は、異なる方法で達成できるタスクにグローバルスコープを使用するのは本当に好きではありません。 – mobius
ofcあなたは関数内にファイルを含めることができ、そのファイル内にグローバルなものがあれば、グローバルに利用できます。 – Tudor