• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Android程序员学PHP开发(30)-ThinkPHP5.0(2)命名空间-PhpStorm

php 搞代码 4年前 (2022-01-22) 21次浏览 已收录 0个评论

命名空间 使用范围 访问方式

*

命名空间

从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,

对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录/home/greg 和 /home/other 中

存在,但在同一个目录中不能存在两个 foo.txt 文件。另外,在目录 /home/greg 外访问 foo.txt 文件时,我们必须将目录名以及目

录分隔符放在文件名之前得到 /home/greg/foo.txt。这个原理应用到程序设计领域就是命名空间的概念。

http://php.net/manual/zh/language.namespaces.php

*

ThinkPHP5采用命名空间方式定义和自动加载类库文件,有效的解决了多模块和Composer类库之间的命名空间冲突问题,并且实现了更加

高效的类库自动加载机制。

http://www.kancloud.cn/manual/thinkphp5/118014

*

function 适用于命名空间

const 适用于命名空间

class 适用于命名空间

define 不适用于命名空间

*

访问方式:

1、非限定名称访问方式

2、完全限定名称访问方式

3、限定名称访问方式(相对路径)

<?php    /**     * 命名空间 使用范围 访问方式     *     * 命名空间     * 从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,     * 对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录/home/greg 和 /home/other 中     * 存在,但在同一个目录中不能存在两个 foo.txt 文件。另外,在目录 /home/greg 外访问 foo.txt 文件时,我们必须将目录名以及目     * 录分隔符放在文件名之前得到 /home/greg/foo.txt。这个原理应用到程序设计领域就是命名空间的概念。     * http://www.gaodaima.com/     *     * ThinkPHP5采用命名空间方式定义和自动加载类库文件,有效的解决了多模块和Composer类库之间的命名空间冲突问题,并且实现了更加     * 高效的类库自动加载机制。     * http://www.gaodaima.com/     *     * function 适用于命名空间     * const 适用于命名空间     * class 适用于命名空间     * define 不适用于命名空间     *     * 访问方式:     * 1、非限定名称访问方式     * 2、完全限定名称访问方式     * 3、限定名称访问方式(相对路径)     */    /<strong style="color:transparent">本文来源gaodai#ma#com搞@@代~&码*网/</strong><strong>搞gaodaima代码</strong>**     * kj1,命名空间1     */    namespace kj1;    function getmsg(){        echo '123<br>';    }    //define('MN','iwanghang');    const MN="iwanghang<br>";    class Animals{        public $obj='cat<br>';    }    /**     * kj2,命名空间2     */    namespace kj2;    use kj1\Animals;    function getmsg(){        echo '456<br>';    }    //define('MN','iwanghang0');    const MN="iwanghang0<br>";    /**     * 访问方式:1、非限定名称访问方式     */    getmsg();    /**     * 访问方式:2、完全限定名称访问方式     */    \kj1\getmsg();    \kj2\getmsg();    echo \kj1\MN;    $animal = new Animals();    echo $animal->obj;    /**     * 访问方式:3、限定名称访问方式     */    //echo kj1\getmsg(); // 会报错,function kj2\kj1\getmsg() 找不到这个函数    /**     * 访问方式:3、限定名称访问方式     */    namespace kj3;    echo kj4\getmsg(); // 打印结果:789    namespace kj3\kj4;    function getmsg(){        echo '789<br>';    }

以上就是Android程序员学PHP开发(30)-ThinkPHP5.0(2)命名空间-PhpStorm的内容,更多相关内容请关注搞代码(www.gaodaima.com)!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Android程序员学PHP开发(30)-ThinkPHP5.0(2)命名空间-PhpStorm

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址