• 技术文章 >php框架 >ThinkPHP

    ThinkPHP之学习使用ArrayAccess

    咔咔咔咔2020-10-09 13:53:09原创52

    在上期聊了ThinkPHP类的自动加载,如你还不太了解可以跟这下文链接去进行查看。本文会带你一起解读ThinkPHP配置文件。

    在文件thinkphp/library/think/Config.php,类Config实现了一个接口为ArrayAccess

    这个时候你是不是有疑问了,这个类到底是干嘛的,为什么要去了解和学习它!带着这个疑问继续往下探寻答案吧!

    到这个接口里边一探究竟。

    在这个接口里边有四个接口需要实现分别为

    • offsetExists 检测偏移位置是否存在
    • offgetGet 获取一个偏移位置的值
    • offsetSet 设置一个偏移位置的值
    • offsetUnset 删除一个偏移位置的值

    在这里插入图片描述这几个函数放到这是不是有点懵呢!别着急,这就给你解答

    这几个方法在Config中也进行实现,但是里边使用了几个方法,根据上边对方法的作用说明后。

    像set、has、remove、get想想大家就知道是什么意思了。

    在这里插入图片描述
    在这里插入图片描述

    接下来,咱们自己来实现一下这个类,给大家演示一下这个类用处到底是什么。ArrayAccess这个类不仅是TP大量使用,在laravel中也是大量存在,所以需要好好学习这个类的作用和思想。

    需要在kaka目录下创建一个文件TestArrayAccess文件,并且设置一个属性,在实现ArrayAccess类。

    至于我自己创建的这个文件夹kaka为什么会执行自动加载就是上一期在类的自动加载中实现的。

    如若不会的话可以把文件先放置到extend目录下即可。

    在这里插入图片描述接着来到application/index/controller/Index.php控制器使用上图实现的方法

    在这里插入图片描述
    在这里插入图片描述

    打印结果在这里插入图片描述这里在使用offsetGet打印的结果为kaka应该都明白怎么回事了吧!其余俩个方法就不去演示了,相信你也已经明白了。

    所以说这个ArrayAccess类就是提供像访问数组一样访问对象的接口

    坚持学习、坚持写博、坚持分享是咔咔从业以来一直所秉持的信念。希望在偌大互联网中咔咔的文章能带给你一丝丝帮助。我是咔咔,下期见。

    以上就是ThinkPHP之学习使用ArrayAccess的详细内容,更多请关注php中文网其它相关文章!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!
    专题推荐:ArrayAccess
    上一篇:ThinkPHP之配置文件的种类 下一篇:是时候了解Yaconf了
    第13期线上培训班

    相关文章推荐

    • 代码详解php中的ArrayAccess接口• PHP数组访问接口ArrayAccess使用详解• 讲解PHP预定义接口之ArrayAccess的使用方法• PHP数组式访问-ArrayAccess示例解析

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网