关于命名空间的问题?

关于命名空间的问题?

  1. 可以同时导入多个类与命名空间,也包括这两个混用么,比如同时导入两个空间与 类,可以这样么?

  2. 有导入变量这一说么?估计没有。。。

  3. 还有一个问题,系统的函数 直接使用对么?比如 time();那么如果系统函数也是用命名空间 是 \time() ?这么用?

  4. 命名空间声明的时候 是namespace A 前面是不加”\“ 但是在使用的时候却是 \A\func(),那么这个”\A\func()“,最前面的”\“指的不是系统根根目录下的?那个系统的函数如何区别?

  5. 假如namespace A 变成namespace \A  这两个有啥区别?

  6. 引用就是use 时候 前面不加 \,那么系统下的函数 就需要加么 如use \time?

    感谢!


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

你好,1、可以同时导入多个类和命名空间,如

<?php
 
//创建一个名为'Article'的命名空间namespace Article;
//此Comment属于Article空间的元素class Comment { }
//创建一个名为'MessageBoard'的命名空间namespace MessageBoard;
//此Comment属于MessageBoard空间的元素class Comment { }?>

2、变量直接定义即可,

3、系统函数可以直接使用,不用在费劲去多设置命名空间,命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误,至于系统函数姐姐使用即可。

4、

amespace A;这句代码定义了一个命名空间,你可以理解为定义一个名称为 A 的域名。namespace \A;这句代码定义了一个命名空间,你可以理解为定义一个名称为 \A 的域名,

但是在对完全限定名称的函数,类和常量的调用在编译时解析。调用时,例如 new \A 解析为类 A。所以实例化类调用时是没有区别的,

系统函数在PHP文件中可直接使用,不用使用命名空间来区别。

5、namespace A 变成namespace \A没什么区别,

6、系统函数不需要设置命名空间,

如果解决您的问题请采纳,祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师