Rumah rangka kerja php ThinkPHP ThinkPHP之学习使用ArrayAccess

ThinkPHP之学习使用ArrayAccess

Oct 08, 2020 pm 04:34 PM

在上期聊了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类就是提供像访问数组一样访问对象的接口

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

Atas ialah kandungan terperinci ThinkPHP之学习使用ArrayAccess. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)