• 陈彤:“凤凰号”和“一点号”将打通后台 2019-05-27
  • 人工智能开启中国健康养殖新时代 “智慧农业——健康养殖公益行动”在北京正式启动 2019-05-19
  • 据塔斯社报道,俄罗斯总统普京日前签署反制裁法案,该法案已获得联邦委员会通过。在受到美国“不友好对待”以及其他国家对俄罗斯实行政治和经济制裁后,法案将捍卫俄罗斯的 2019-05-16
  • 市中心民房内隐藏着线下赌场 杭州警方捣毁一赌博团伙 2019-05-10
  • 6月15日凤凰直通车:国窖1573俄罗斯体育文化之旅,为世界杯打上中国印白酒 世界杯 2019-05-10
  • 国家公务员局调研组来抚州调研 2019-05-05
  • 出国时这些“免费”陷阱 会令你蒙受巨大损失 2019-05-05
  • 中国光大银行获第十二届人民企业社会责任奖年度扶贫奖 2019-04-20
  • 回到1396年的波斯街头文章中国国家地理网 2019-04-20
  • 多彩课堂熔铸红色魂——甘祖昌干部学院教学素描 2019-04-18
  • 孩子“触网”低龄化 净网护苗宜疏不宜堵 2019-04-12
  • 打喷嚏、擤鼻涕,这些小事大部分人都做错了 2019-04-12
  • [哈哈]逻辑:既然已经按需分配了,也就是说,你的自我实现需求也都满足了,那按劳分配的那一部分有何必要?只要不哈,就知道这是很清晰平滑的逻辑。 2019-04-05
  • 【理上网来·喜迎十九大】精神之“钙”是拒腐防变的良药 2019-03-21
  • 紫光阁中共中央国家机关工作委员会 2019-03-21
  • 为什么手机号不选0多的:PHP命名空间

    山西11选5(任五)遗漏 www.csvi.net PHP命名空间

    PHP 命名空间(namespace)是在PHP 5.3中加入的,如果你学过C#和Java,那命名空间就不算什么新事物。 不过在PHP当中还是有着相当重要的意义。

    PHP 命名空间可以解决以下两类问题:

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

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


    定义PHP命名空间

    默认情况下,所有常量、类和函数名都放在全局空间下,就和PHP支持命名空间之前一样。

    命名空间通过关键字namespace 来声明。如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。语法格式如下;

    < ?php  
    // 定义代码在 'MyProject' 命名空间中  
    namespace MyProject;  
     
    // ... 代码 ...

    你也可以在同一个文件中定义不同的命名空间代码,如:

    < ?php  
    namespace MyProject1;  
    // MyProject1 命名空间中的PHP代码  
     
    namespace MyProject2;  
    // MyProject2 命名空间中的PHP代码    
     
    // 另一种语法
    namespace MyProject3 {  
     // MyProject3 命名空间中的PHP代码    
    }  
    ?>

    在声明命名空间之前唯一合法的代码是用于定义源文件编码方式的 declare 语句。所有非 PHP 代码包括空白符都不能出现在命名空间的声明之前。

    <?php
    declare(encoding='UTF-8'); //定义多个命名空间和不包含在命名空间中的代码
    namespace MyProject {
    const CONNECT_OK = 1;
    class Connection {
     /* ... */ 
     }
     function connect() {
      /* ... */ 
       }
      }
      namespace { 
      // 全局代码session_start();
      $a = MyProject\connect();
      echo MyProject\Connection::start();
      }
    ?>

    以下代码会出现语法错误:

    <html>
    <?php
    namespace MyProject; 
    // 命名空间前出现了“<html>” 会致命错误 - 命名空间必须是程序脚本的第一条语句
    ?>


    子命名空间

    与目录和文件的关系很象,PHP 命名空间也允许指定层次化的命名空间的名称。因此,命名空间的名字可以使用分层次的方式定义:

    <?php
    namespace MyProject\Sub\Level;  //声明分层次的单个命名空间
    const CONNECT_OK = 1;
    class Connection {/* ... */ }
    function Connect() {/* ... */}
     ?>

    上面的例子创建了常量 MyProject\Sub\Level\CONNECT_OK,类 MyProject\Sub\Level\Connection 和函数 MyProject\Sub\Level\Connect。


    以下高清视频内容:PHP命名空间讲解


    微信扫码关注
    领淘宝内部优惠券

    淘宝内部优惠券
  • 陈彤:“凤凰号”和“一点号”将打通后台 2019-05-27
  • 人工智能开启中国健康养殖新时代 “智慧农业——健康养殖公益行动”在北京正式启动 2019-05-19
  • 据塔斯社报道,俄罗斯总统普京日前签署反制裁法案,该法案已获得联邦委员会通过。在受到美国“不友好对待”以及其他国家对俄罗斯实行政治和经济制裁后,法案将捍卫俄罗斯的 2019-05-16
  • 市中心民房内隐藏着线下赌场 杭州警方捣毁一赌博团伙 2019-05-10
  • 6月15日凤凰直通车:国窖1573俄罗斯体育文化之旅,为世界杯打上中国印白酒 世界杯 2019-05-10
  • 国家公务员局调研组来抚州调研 2019-05-05
  • 出国时这些“免费”陷阱 会令你蒙受巨大损失 2019-05-05
  • 中国光大银行获第十二届人民企业社会责任奖年度扶贫奖 2019-04-20
  • 回到1396年的波斯街头文章中国国家地理网 2019-04-20
  • 多彩课堂熔铸红色魂——甘祖昌干部学院教学素描 2019-04-18
  • 孩子“触网”低龄化 净网护苗宜疏不宜堵 2019-04-12
  • 打喷嚏、擤鼻涕,这些小事大部分人都做错了 2019-04-12
  • [哈哈]逻辑:既然已经按需分配了,也就是说,你的自我实现需求也都满足了,那按劳分配的那一部分有何必要?只要不哈,就知道这是很清晰平滑的逻辑。 2019-04-05
  • 【理上网来·喜迎十九大】精神之“钙”是拒腐防变的良药 2019-03-21
  • 紫光阁中共中央国家机关工作委员会 2019-03-21
  • 捕鱼达人2 多乐彩11选53胆全拖 体育彩票大乐透 体彩11选5走势图 新时时彩分析 2017年体彩p3开奖结果 刮刮乐扑克牌 程序摇奖彩票大奖 广东36选7 北京快乐8走势图 新时时彩几时开 宁波体彩20选5开奖 怎么破解加拿大快乐8 内蒙古时时彩走势 北京pk10牛牛是 体育彩票31选7开奖