php中trait如何使用

php中trait如何使用

1、你知道php中的trait是什么么?

它上去既像类又像接口,但其实都不是。

Trait可以看做类的部分实现,可以混入一个或多个现有的PHP类中,其作用有两个:表明类可以做什么;提供模块化实现。Trait是一种代码复用技术,为PHP的单继承限制提供了一套灵活的代码复用机制。

2、PHP版本要求:

立即学习“PHP免费学习笔记(深入)”;

php5.4开始引入trait,其目的就是在于减少代码的重复,增加代码的复用性。

3、trait的使用场景:

试想这样一种情况,当有一个方法需要在很多的类中使用时,该怎么处理?

通常一般的处理方式会是,写一个基础类,在基类中实现这个方法,然后所有类都继承这个基类。

这是一种处理方法,但不是最好的处理方式。通常采用继承的情况是:几个类具有很大的相似性。比如人作为一个基类,学生、工人、等继承“人”这个基类来扩展。

由此,trait的作用就出来了,trait 可以在多个类中使用。

4、trait如何使用:

引用PHP手册中的例子:

例子一


登录后复制

1、先声明一个trait;

2、在类中使用use将该trait引入。

是不是非常简单(手动逃)?需要注意的是trait的优先级。

(免费学习视频分享:php视频教程)

5、trait的优先级

(敲黑板)从基类继承的成员会被 trait 插入的成员所覆盖。优先顺序是来自当前类的成员覆盖了 trait 的方法,而 trait 则覆盖了被继承的方法。

优先级:自身方法>trait的方法>继承的方法(就是这样子的。)

看例子

sayHello();//输出是 Hello Universe!?>

登录后复制

还有一点需要注意的是:多个trait的使用。

sayHello();$o->sayWorld();$o->sayExclamationMark();?>

登录后复制

总结:Trait是一种代码复用技术,为PHP的单继承限制提供了一套灵活的代码复用机制。

相关推荐:php教程

以上就是php中trait如何使用的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2516439.html

(0)
上一篇 2025年3月5日 15:52:58
下一篇 2025年3月5日 15:53:09

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php如何去掉字符串中的最后一个元素

    php去掉字符串最后一个元素的方法:1、使用substr函数返回字符串的一部分,语法格式为“substr(字符串,0,-1)”;2、使用rtrim函数移除字符串右侧的空白字符或其他预定义字符,语法格式为“rtrim(字符串,末尾字符)”。 …

    2025年3月5日
    100
  • 如何提高php项目的响应速度

    首先要提前说明的是,php项目的可优化范围很广,在这里我们只讨论PHP程序本身的加速。 1、开启opcache。zend引擎每次都会把php代码解析成opcode,开启opcache后,会缓存opcode。 2、服务器的GCC编译器使用4.…

    2025年3月5日
    200
  • php执行时间超时怎么办

    实际工作中如果遇到php执行超时的时候,我们该如何解决呢? 解决方案有三种: 1、修改php的配置文件,找到php.ini文件,它一般应该放在你的C:WINDOWS目录下,然后找到max_execution_time= 30 ;//设置成你…

    2025年3月5日
    200
  • php中sort()函数的使用(附代码示例)

    php中我们经常需要对数组进行操作,有时候我们可能需要将数组进行排序,这时候就需要用到php中的内置函数sort(),本文就带大家一起来看一看. sort    ( array $array   , int $sort_flags = SO…

    编程技术 2025年3月5日
    200
  • 解析PHP中的array_push()函数

    php中经常需要对数组进行操作,有时我们可能需要将单元添加进入数组中,php中内置了array_push()函数,可以将一个或多个单元压入数组的末尾(入栈),本文带大家一起来看一看,首先了解一下语法. array_push   ( arra…

    2025年3月5日
    200
  • 详解PHP中的ceil()函数(附代码实例)

    php在对数据进行操作过程中,我们经常需要将浮点型的数据进行进一取整,php中内置了ceil()函数,能够帮助我们解决这一问题,本文就带大家一起来看一看,首先来了解一下ceil()函数的语法. ceil     ( float $value…

    2025年3月5日
    200
  • 掌握PHP中的array数组(附代码解析)

        数组是php中数据的集合,能够在单个变量中存储多个值,php中经常对数组进行操作,本文就带大家一起来看一看,php中的数组array. 数组分为索引数组和关联数组. 1.索引数组 <?php $arr1=[12,213,324…

    2025年3月5日
    200
  • 详解str_replace()子字符串替换函数

    上篇文章,我们介绍了《php变量与json格式数据相互转换》,本篇文章我们来介绍字符串。字符串是php使用过程中操作较为常见的数据类型,对于子字符串的操作,php内置了str_replace(),本文就带大家一起来看一看。首先我们来看一看s…

    编程技术 2025年3月5日
    200
  • php中利用stripos()获取字符串首次出现的位置

    上一篇文章,我们介绍了《详解str_replace()子字符串替换函数 》,本篇文章我们主要介绍stripos()函数。php中字符串是使用较为频繁的数据类型,在一些特殊的场景,我们可能需要在字符串中获取指定字符串首次出现的位置,php中内…

    2025年3月5日
    200
  • php中利用abs()获取参数的绝对值

    上篇文章我们介绍了《php中利用stripos()获取字符串首次出现的位置》,本篇文章带大家一起来看一看abs()函数。在php的日常使用过程中,我们可能需要获取变量的绝对值,这时候我们就可以利用php中的内置函数abs()函数,本文首先带…

    2025年3月5日
    200

发表回复

登录后才能评论