Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<ArrayObject::asortArrayObject::count>
^ArrayObjectLast updated: Mon, 26 Oct 2026

ArrayObject::__construct

(PHP 5, PHP 7, PHP 8)

ArrayObject::__construct — Construct a new array object

Description

public function ArrayObject::__construct(array|object $array = [], int $flags = 0, string $iteratorClass = ArrayIterator::class)

This constructs a new array object.

Warning

As of PHP 8.5.0, passing an enum as the array parameter throws an InvalidArgumentException. Modifying the $name or $value properties of an enum would break engine assumptions.

Parameters

array

The array parameter accepts an array or an object. Passing an object is deprecated as of PHP 8.5.0.

flags

Flags to control the behaviour of the ArrayObject object. See ArrayObject::setFlags().

iteratorClass

Specify the class that will be used for iteration of the ArrayObject object. The class must be a subtype of the ArrayIterator class.

Errors/Exceptions

As of PHP 8.5.0, throws an InvalidArgumentException if array is an enum.

Changelog

Version Description
8.5.0 Passing an enum as array now throws an InvalidArgumentException.
8.5.0 Passing an object as array is deprecated.

Examples

Example #1 ArrayObject::__construct() example

<?php

$array = [
    '1' => 'one',
    '2' => 'two',
    '3' => 'three'
];

$arrayobject = new ArrayObject($array);

var_dump($arrayobject);

?>

The above example will output:

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

See Also


<ArrayObject::asortArrayObject::count>
^ArrayObjectLast updated: Mon, 26 Oct 2026