以phpmailer这个类库为例,composer自动加载好该类库,有用的文件都放在src这个目录下
这些文件的命名空间都是这个:namespace PHPMailer\PHPMailer;
如果我们要使用PHPMailer这个类,需要use PHPMailer\PHPMailer\PHPMailer;所以文件名要和类名一致(但是如果一个文件里有多个类应该如何使用,所以在一个文件中尽量不要定义多个类)
命名空间与文件的路径有时可能不一样,这个就是,PHPMailer的类文件路径是phpmailer\phpmailer\src\PHPMailer.php,命名空间却是PHPMailer\PHPMailer,这是因为在composer加载时就对命名空间与路径进行了绑定,如下图:
thinkphp5 composer加载的类库在vendor目录下,自己下载的类库放在extend目录下,extend目录下的类库可以实现自动加载,
原文:https://www.cnblogs.com/jcydd/p/10615170.html