当前位置:  开发笔记 > 编程语言 > 正文

使PHP对象的行为类似于数组?

如何解决《使PHP对象的行为类似于数组?》经验,为你挑选了1个好方法。

我希望能够编写一个行为类似于数组的PHP类,并使用常规数组语法进行获取和设置.

例如(其中Foo是我制作的PHP类):

$foo = new Foo();

$foo['fooKey'] = 'foo value';

echo $foo['fooKey'];

我知道PHP有_get和_set魔术方法,但是那些不允许你使用数组表示法来访问项目.Python通过重载__getitem__和__setitem__来处理它.

有没有办法在PHP中执行此操作?如果它有所作为,我正在运行PHP 5.2.



1> Mat Mannion..:

如果你扩展ArrayObject或实施,ArrayAccess那么你可以做你想要的.

ArrayObject的

ArrayAccess接口


将ArrayObject转换为数组以将其与数组函数一起使用,例如array_values((array)$ some_array_object).这是一个烦人的额外步骤,但它的工作原理.
推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有