C#のusing Name.Space;
ステートメントに相当するものは、その名前空間のすべてのクラスを現在のファイルで使用できるようにするものですか?これはPHPでも可能ですか?PHPの名前空間:C#と同等のもの
私が好きなもの(動作しません):
<?php
# myclass.php
namespace Namespace;
class myclass {
}
?>
<?php
# main.php
include 'myclass.php'
use Namespace;
new myclass();
?>
PHPは既存の(およびインポートされた)すべての名前空間にクラスが見つからない場合にのみ、クラスを自動読み込みすることができます。ネームスペースをインポートした場合、そのネームスペースで正しく定義されている(含まれている)すべてのクラスを呼び出し可能にする必要があります。 – knittl
これは、参照されるクラス名ごとに、インポートされた名前空間ごとにオートローダーを呼び出す必要があるため、膨大な数のオートロード呼び出しにつながります。自動ロード機能が比較的高価であると仮定すると(ファイルシステムを参照)、これはかなり注目に値する。 – johannes
もちろん、スクリプトの実行中にファイルを含むクラスを作成し、それを使用して(おそらくあまり賢明ではないかもしれませんが)PHPを使用することができます。 – Mchl