PHP が名前空間を使用する場合、なぜ名前空間の下のクラスに対して正確である必要があるのでしょうか?
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-06-06 09:53:57
0
3
669

Tool.class.php ファイルのコードは次のとおりです:

名前空間 CompanyTool;

クラス ツール{

}

私の質問は、他のファイルで Tool クラスを使用する場合、次のように書かなければならない理由です: use Company\Tool\Tool

use Company\Tool と書くだけで十分だと思いました (私が理解しているのは、この領域で任意のクラスを使用できることを意味します)。
教えていただければ幸いです、ありがとうございます。

曾经蜡笔没有小新
曾经蜡笔没有小新

全員に返信(3)
巴扎黑

C++ にはあなたが望むものがありますusing namespace xxx

なぜ PHP は名前空間全体を直接導入しないのでしょうか? これは設計に携わった人だけが知っているでしょう。

いろいろな言語で一括導入が推奨されていないのは、一度にたくさんの不要なものを導入することを避けるためだと思われます。

いいねを押す +0
左手右手慢动作
  1. クラスに正確であれば、パフォーマンスを向上させることができます。特定のディレクトリに対してのみ正確である場合、クラスがロードされるたびに、コンパイラは依然としてそのディレクトリに移動して、クラスが存在するかどうかを確認する必要があります。

  2. 競合を避けるためにクラスに対して正確である同じクラス名が 2 つのディレクトリに存在する場合、クラスに対して正確である場合、競合は非常にうまく回避できます。

  3. 最適化が簡単、C# には投稿者が言及した機能がありますが、C# は実行可能ファイルに直接コンパイルされますが、Java はクラス精度のアプローチを採用しており、どちらもインタープリター言語であり、この利点は後の段階のインタープリテーションに有益です。最適化により、クラスを正確に検出できるようになり、キャッシュの消費が削減されます。

いいねを押す +0
PHPzhong

クラスまたは名前空間を使用できます

リーリー

引用

リーリー

または

リーリー

そんな風に書けば間違いなくautoload找不到这个文件。如果是手动载入文件的,从命名空间的理解出发也必须要那样写。而且我觉得提问的那个排版应该是namespace CompanyTool;そう

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート