php 自动加载机制,为什么单文件可以访问没有use的类?
新建一个Thinkphp5.1项目:
composer create-project topthink/think tp5.1 5.1.* --prefer-dist
config\app.php:
<?php
return [
// ...
'dispatch_success_tmpl' => Env::get('think_path') . 'tpl/dispatch_jump.tpl',
// ...
]
- 请问这里的
Env
并没有使用use think\facade\Env;
为什么也可以使用呢? - 请问我使用
vscode
代码检查提示Undefined type 'Env'.intelephense(1009)
有什么方法避免这个错误提示吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
1.第一个问题涉及涉及到应用容器。简而言之,应用内部内置了一些常用的门面(facade)与别名的映射,在使用时应用会通过搜寻别名
Env
找到映射的真实空间think\facade\Env
,然后通常composer加载机制,找到类文件,从而实现自动加载2.vscode 错误提示请自行查阅官网,或在vscode用户自定义配置文件中关闭该提醒