为了账号安全,请及时绑定邮箱和手机立即绑定

php use function

php use function

有只小跳蛙 2019-05-08 16:07:42
在一些代码里面看见有使用usefunctionfunctionname这样的语句;比如这样:usefunctionarray_key_exists;usefunctionarray_keys;usefunctionarray_map;在php官方文档也看见这样的介绍文档请问下这样有什么优点
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

命名空间了解一下
use,假设在一个php文件中有,两个ClassA,同时我们需要进行使用其中的一个Class如何使用呢?
这个时候就需要引入命名空间的概念,代码空间隔离,一个命名空间一个作用域,例如
namespaceTest1;
ClassA{}
namespaceTest2
ClassA{}
#使用
useTest1\A;
useTest1\B
;
                            
查看完整回答
反对 回复 2019-05-08
?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

命名空间
你可以把命名空间想象成硬盘的目录在同一个目录下不能有两个相同名字的文件(类、方法、常量),默认情况下,创建的类都是挂载在根路径(全局命名空间)的。而处于PHP的预设方法都是处于全局命名空间的,有时候我们觉得那个方法不顺手想要去修改一下,如果是在全局命名空间下重写了这个方法(事实上大多数时候还会出现异常提示方法被重复定义),那么如果在别的地方需要调用到这个同名的原生方法时,就因为你重写写全局命名空间下的这个方法,导致没法访问到原生方法。那么这时候就可以创建一个命名空间(创建目录),你就可以在这个命名空间下重写这个方法,然后在平级命名空间(当前目录)下调用这个方法时,默认会调用当前命名空间中的可用方法,如果没有就去全局命名空间找。如果想直接使用全局命名空间下的方法,即在方法名前面加上\。
在任何位置使用全局命名空间下的方法都无需手动引入(use),除非当前命名空间下有同名的方法、类、常量。
                            
查看完整回答
反对 回复 2019-05-08
  • 2 回答
  • 0 关注
  • 1333 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信