helly           Wed Dec 17 17:14:59 2003 EDT

  Added files:                 
    /php-src/tests/classes      array_access_005.phpt 
  Log:
  Add new test
  

Index: php-src/tests/classes/array_access_005.phpt
+++ php-src/tests/classes/array_access_005.phpt
--TEST--
ZE2 ArrayAccess and sub Arrays
--FILE--
<?php 

class Peoples implements ArrayAccess {
        public $person;
        
        function __construct() {
                $this->person = array(array('name'=>'Joe'));
        }

        function offsetExists($index) {
                return array_key_exists($this->person, $index);
        }

        function offsetGet($index) {
                return $this->person[$index];
        }

        function offsetSet($index, $value) {
                $this->person[$index] = $value;
        }

        function offsetUnset($index) {
                unset($this->person[$index]);
        }
}

$people = new Peoples;

var_dump($people->person[0]['name']);
$people->person[0]['name'] = $people->person[0]['name'] . 'Foo';
var_dump($people->person[0]['name']);
$people->person[0]['name'] .= 'Bar';
var_dump($people->person[0]['name']);

echo "---ArrayOverloading---\n";

$people = new Peoples;

var_dump($people[0]['name']);
$people[0]['name'] = $people->person[0]['name'] . 'Foo';
var_dump($people[0]['name']);
$people[0]['name'] .= 'Bar';
var_dump($people[0]['name']);

echo "---Done---\n";
?>
--EXPECT--
string(3) "Joe"
string(3) "JoeFoo"
string(3) "JoeFooBar"
---ArrayOverloading---
string(3) "Joe"
string(3) "JoeFoo"
string(3) "JoeFooBar"
---Done---

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to