• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    PHP的Trait机制原理与用法分析

    本文实例讲述了PHP的Trait机制原理与用法。分享给大家供大家参考,具体如下:

    Trait介绍:

    1、自PHP5.4起,PHP实现了一种代码复用的方法,称为trait。
    2、Trait是为类似PHP的单继承语言二准备的一种代码复用机制。
    3、Trait为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用method。
    4、trait实现了代码的复用,突破了单继承的限制;
    5、trait是类,但是不能实例化。
    6、当类中方法重名时,优先级,当前类>trait>父类;
    7、当多个trait类的方法重名时,需要指定访问哪一个,给其它的方法起别名。

    示例:

    trait Demo1{
     public function hello1(){
      return __METHOD__;
     }
    }
    trait Demo2{
     public function hello2(){
      return __METHOD__;
     }
    }
    class Demo{
     use Demo1,Demo2;//继承Demo1和Demo2
     public function hello(){
      return __METHOD__;
     }
     public function test1(){
      //调用Demo1的方法
      return $this->hello1();
     }
     public function test2(){
      //调用Demo2的方法
      return $this->hello2();
     }
    }
    $cls = new Demo();
    echo $cls->hello();
    echo "
    "; echo $cls->test1(); echo "
    "; echo $cls->test2();

    运行结果:

    Demo::hello
    Demo1::hello1
    Demo2::hello2

    多个trait方法重名:

    trait Demo1{
     public function test(){
      return __METHOD__;
     }
    }
    trait Demo2{
     public function test(){
      return __METHOD__;
     }
    }
    class Demo{
     use Demo1,Demo2{
      //Demo1的hello替换Demo2的hello方法
      Demo1::test insteadof Demo2;
      //Demo2的hello起别名
      Demo2::test as Demo2test;
     }
     public function test1(){
      //调用Demo1的方法
      return $this->test();
     }
     public function test2(){
      //调用Demo2的方法
      return $this->Demo2test();
     }
    }
    $cls = new Demo();
    echo $cls->test1();
    echo "
    "; echo $cls->test2();

    运行结果:

    Demo1::test
    Demo2::test

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

    希望本文所述对大家PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • 深入解析PHP底层机制及相关原理
    • PHP中的异常处理机制深入讲解
    • PHP底层运行机制与工作原理详解
    • php7 错误处理机制修改实例分析
    • PHP命名空间与自动加载机制的基础介绍
    • PHP session垃圾回收机制实例分析
    • PHP进阶学习之类的自动加载机制原理分析
    • PHP进阶学习之垃圾回收机制详解
    • PHP简单验证码功能机制实例详解
    • PHP SESSION机制的理解与实例
    • PHP析构函数destruct与垃圾回收机制的讲解
    • 使用PHP反射机制来构造"CREATE TABLE"的sql语句
    • 详解PHP的执行原理和流程
    上一篇:tp5修改(实现即点即改)
    下一篇:确保Laravel网站不会被嵌入到其他站点中的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PHP的Trait机制原理与用法分析 PHP,的,Trait,机制,原理,与,