制作一个PHP对象表现得像一个数组

制作一个PHP对象表现得像一个数组

本文介绍了制作一个PHP对象表现得像一个数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望能够写一个行为像一个数组,并使用正常的数组语法获取和放大器的PHP类;设置。

I'd like to be able to write a PHP class that behaves like an array and uses normal array syntax for getting & setting.

例如(其中foo是一个PHP类我的制作):

For example (where Foo is a PHP class of my making):

$foo = new Foo();

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

echo $foo['fooKey'];

我知道,PHP有_GET和_set神奇的方法,但这些都不会让你使用数组表示法来访问项目。 Python的超载__getitem__和__setitem __处理它。

I know that PHP has the _get and _set magic methods but those don't let you use array notation to access items. Python handles it by overloading __getitem__ and __setitem__.

有没有办法在PHP中做到这一点?如果它的确与众不同,我运行PHP 5.2。

Is there a way to do this in PHP? If it makes a difference, I'm running PHP 5.2.

推荐答案

如果您延长 ArrayObject的或实施 ArrayAccess接口那么你可以做你想做的。

If you extend ArrayObject or implement ArrayAccess then you can do what you want.




  • ArrayObject
  • ArrayAccess

这篇关于制作一个PHP对象表现得像一个数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-07 06:01