PHP 命名空间
概述
什么是命名空间呢? 这个概念我第一次知道是在C++中.
首先, 为什么要用到命名空间呢? 当然是为了解决重名的问题了, 其实命名空间和Java中的包有着异曲同工之妙, Java中 a包下的Test类, 和b包下的Test类是两个类, 在使用的时候import不同包下即可, PHP中 a命名空间下的Test类,与b命名空间下的Test类也是两个类.
好了, 看PHP命名空间的简单应用:
是不是很简单?
但是我有如下问题?
- 不指定命名空间时, 如何?
- 不将类use进来,直接创建,如何?
- 若要引入不同命名空间的同名类, 如何?
问题解决
1. 当不指定命名空间时, 为全局空间,公共空间
2. 不讲类use进来, 直接创建时, 将在当前命名空间下寻找
3. 引入不同命名空间的同名类时, 可以使用别名来区分同名类
总结
PHP中命名空间与文件所处路径是没有关系的, 使用时, 最方便的就是直接使用根路径进行引入, 如果使用相对路径, 可能会混淆
其实, 就将命名空间当作路径来使用就可以了, 当使用类时, '\xx' 为绝对路径, 'xx'为相对路径(use时不用), 其实想想并不是很绕
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY