PHP use

一个普通的php 文件 也有命名空间 php 类文件 有用命名空间 ,在PHP 普通文件中 已经use了PHP类文件,当在PHP普通文件中 调用 类文件的方法时 为什么还需要include 类文件呢

阅读 3.8k
2 个回答

use只是用于减少在namespace系统中过长类名的表示,并不含有自动加载对应类源码的作用。类的源码仍然需要使用include进行加载。当然,目前也有很多根据namesapce系统来完成类加载的自动加载器,只要在php中注册这些类加载器,可以完成根据namesapce识别路径以及对类的自动加载,这类加载器的典型代表就是符合PSR-0PSR-4的类加载器。

同意楼上。现在可以用composer来生成一个类的自动加载器,这样在A类中使用B类时只需要按照命名空间use就行,关于composer的自动加载原理可以看看我的这篇文章,希望有帮助,Laravel学习笔记之Composer自动加载

推荐问题
宣传栏