ArrayObject::__construct

(PHP 5, PHP 7, PHP 8)

ArrayObject::__construct — Construct a new array object

说明

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

This constructs a new array object.

警告

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.

参数

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.

错误/异常

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

更新日志

版本 说明
8.5.0 Passing an enum as array now throws an InvalidArgumentException.
8.5.0 Passing an object as array is deprecated.

示例

示例 #1 ArrayObject::__construct() example

<?php

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

$arrayobject = new ArrayObject($array);

var_dump($arrayobject);

?>

以上示例会输出:

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

参见

+添加备注

用户贡献的备注

此页面尚无用户贡献的备注。