您现在的位置是:首页 > PHP框架交流PHP框架交流
php对象当数组使用 接口ArrayAccess对象下标取值赋值 php进阶
上善若水2022-01-02 16:52:10【PHP框架交流】 1441人已围观
简介php对象当数组使用,一个对象如果没有实现ArrayAccess结果是无法采用下标的方式去调用赋值和获取值的,目前主流的php框架查询出的集合对象都可以使用数组下标的方式去进行赋值.一个简单的demo
php对象当数组使用,一个对象如果没有实现ArrayAccess结果是无法采用下标的方式去调用赋值和获取值的,目前主流的php框架查询出的集合对象都可以使用数组下标的方式去进行赋值.
一个简单的demo实现数据方式赋值 获取值.
class A implements ArrayAccess
{
/**
* @var array $data
*/
public $data = [];
public function offsetExists($offset)
{
echo __FUNCTION__ . PHP_EOL;
return array_key_exists($offset,$this->data);
}
public function offsetGet($offset)
{
echo __FUNCTION__ . PHP_EOL;
return $this->data[$offset];
}
public function offsetSet($offset, $value)
{
echo __FUNCTION__ . PHP_EOL;
$this->data[$offset]=$value;
}
public function offsetUnset($offset)
{
echo __FUNCTION__ . PHP_EOL;
unset($this->data[$offset]);
}
}
$a = new A();
$a['name'] = 'a';
echo $a['a'], PHP_EOL;
echo isset($a['a']), PHP_EOL;
unset($a['a']);
最终的输入结果如下:
offsetSet
offsetGet
offsetExists
offsetUnset
对应的调用方法,大家可以进行对比.依次会调用相当的函数.了解这个之后我们就能知道为啥.框架里面的对象可以把对象当数组使用的.
很赞哦! (1)
相关文章
随机图文
-
2020.09.06武汉植物园,湖北艺术馆游玩
一天预约了两个景点一次玩个够,首先是武汉植物园,这里平时门票是需要35RMB呢,之前玩的景点都没排队,这个去的时候居然在排队,或许是我去的太早了吧,当时也就快1点的样子,是刷身份证进去的,整体整个植物 -
剧情反转幽默故事
1. 我真的服了我微信里某些女孩子,觉得自己长得好看隔三差五就发自拍,我真的无语,要发就天天发,我愿意看,求求你了!2. 风好 吹乱了我的秀发,吹落了你的假发。3. 虽然我不会做饭,但我能点得一手好外 -
PHP8.0新特性(1)命名参数 参数的顺序无关
熟悉PHP8.0的新特性,命名参数参数的顺序无关,再传入参数中可以加入参数名称b:20,a:10,作用相当于$a=10,$b=10传参,尽管我们先传入b,但是b:20会正确赋值给$b //1 -
php技术提升心得与方法
现在的PHP市场虽然充斥了大量的的PHP开发人员,但这些人当中真正能称得上高手的却寥寥无几。很多公司虽然招聘了一些PHP开发人员,但是由于技术水平不高,导致公司的项目一直堆积。这不仅另公司无奈也让已经入职的PHP开发人员着急,他们也想要在PHP领域更近一步,但却苦于找不到提高自己的方法,下面我们的鸥仔收集了一些PHP大神的一些工作方式、习惯,让大家看看PHP大神们是如何工作,也希望这些方法能帮助到那些想要在PHP领域更近一步的人。