Yii2.0学习第4课:命名空间-01

 时间:2026-02-16 20:14:41

1、运行我们的LNMP环境,使用浏览器查看我们默认首页地址。并查看首页“控制器”代码,如下:

namespace app\controllers;

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

2、一句话概括“命名空间”:一种封装事物的方法。有的朋友可能不理解“封装”和“事物”了。用一种抽象的词汇来解释一个“抽象”的词汇,好难,( ̄▽ ̄)"。

初次感觉“app\controllers”貌似是个目录结构,我们再次查看一下项目文档结构:

(1)basic\assets\AppAsset.php

(2)basic\controllers\SiteController.php

(3)basic\models\User.php

(4)basic\commands\HelloController.php

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

3、对比步骤2中的目录结构及该目录下文件中“命名空间”的使用,我们会发现以下问题:

(1)basic\assets =》app\assets

(2)basic\models =》app\models

(3)basic\controllers =》 app\controllers

(4)basic\commands =》app\commands

不知道读者有什么感想?

4、已basic\controllers\SiteController.php为例:

命名空间内容为“namespaces app\controllers”表示SiteController.php这个文件在controllers目录下。其他同理。

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

Yii2.0学习第4课:命名空间-01

5、我们会发现,实际上SiteController.php本来就在controllers目录下,这样写不是多此一举吗?查看PHP官网,解释说其可以解决两种问题:

(1)用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。

(2)为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。    

Yii2.0学习第4课:命名空间-01

  • Yii2.0学习第22课:布局的使用
  • 在yii2.0中怎样使用get请求?
  • Yii2.0学习第25课:前端资源的应用01
  • Yii2.0学习第21课:渲染视图
  • Yii2.0学习第20课:如何修改TDK
  • 热门搜索
    韩国 旅游 大金湖旅游攻略 四川旅游资源 北极村旅游风景区 黄山旅游线路图 香港迪士尼旅游 保定旅游局 云南省旅游网 遂宁旅游景点 元旦旅游