From ced34cb15e095836767971aa4d27b141fb1d7ec9 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak <alec@alec.pl> Date: Sat, 18 Oct 2014 08:47:54 -0400 Subject: [PATCH] Merge pull request #230 from bytesatwork-xx/master --- program/lib/Roundcube/rcube_result_set.php | 30 +++++++++++++++++++++++++++++- 1 files changed, 29 insertions(+), 1 deletions(-) diff --git a/program/lib/Roundcube/rcube_result_set.php b/program/lib/Roundcube/rcube_result_set.php index a4b070e..82502ce 100644 --- a/program/lib/Roundcube/rcube_result_set.php +++ b/program/lib/Roundcube/rcube_result_set.php @@ -25,7 +25,7 @@ * @package Framework * @subpackage Addressbook */ -class rcube_result_set implements Iterator +class rcube_result_set implements Iterator, ArrayAccess { public $count = 0; public $first = 0; @@ -61,6 +61,34 @@ $this->current = $i; } + /*** Implement PHP ArrayAccess interface ***/ + + public function offsetSet($offset, $value) + { + if (is_null($offset)) { + $offset = count($this->records); + $this->records[] = $value; + } + else { + $this->records[$offset] = $value; + } + } + + public function offsetExists($offset) + { + return isset($this->records[$offset]); + } + + public function offsetUnset($offset) + { + unset($this->records[$offset]); + } + + public function offsetGet($offset) + { + return $this->records[$offset]; + } + /*** PHP 5 Iterator interface ***/ function rewind() -- Gitblit v1.9.1