PHP: ArrayObject::__construct - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ArrayObject::count ArrayObject::append

Last updated: Sat, 27 Jan 2007

view this page in

# ArrayObject::__construct

(no version information, might be only in CVS)

ArrayObject::__construct -- Construct a new array object

## Description

ArrayObject ArrayObject::__construct ( mixed input )

This constructs a new array object. The `input` parameter accepts an array or another ArrayObject.

Пример 1. ArrayObject::__construct() example

`<?php
$array = array('1' => 'one',
'2' => 'two',
'3' => 'three');
$arrayobject = new ArrayObject($array);
var_dump($arrayobject);
?>`

Результат выполнения данного примера:

    object(ArrayObject)#1 (3) {
      [1]=>
      string(3) "one"
      [2]=>
      string(3) "two"
      [3]=>
      string(5) "three"
    }

add a note User Contributed Notes
ArrayObject::__construct
Grigori Kochanov
15-Jul-2006 03:51
`As Marcus explained, the flag ArrayObject::SPL_ARRAY_AS_PROPS means the array element may be used as a property if there is no conflict with visible properties.
If there are visible properties in the class, the array element will not overwrite it's value.
<?php
class Rules extends ArrayObject {
public $len = 1;
function __construct($array){
parent::__construct($array,ArrayObject::ARRAY_AS_PROPS);
$this['len'] = 2;
}
}
$x = new Rules(array(1,2));
echo $x->len;
?>
Result: 1
<?php
class Rules extends ArrayObject {
private $len = 1;
function __construct($array){
parent::__construct($array,ArrayObject::ARRAY_AS_PROPS);
$this['len'] = 2;
}
}
$x = new Rules(array(1,2));
echo $x->len;
?>
Result: 2`
add a note
ArrayObject::count ArrayObject::append

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 10:36:09 2007 PST