# ArrayObject クラス

(PHP 5, PHP 7, PHP 8)

## はじめに

このクラスは、オブジェクトを配列として動作させます。

> 注意: このクラスをオブジェクトにラップして使うことは、基本的に間違いです。 そのため、オブジェクトと一緒に使うべきではありません。

## クラス概要

class ArrayObject implements IteratorAggregate, ArrayAccess, Serializable, Countable {
/* 定数 */
public const int STD_PROP_LIST;
public const int ARRAY_AS_PROPS;
/* メソッド */
public function __construct(array|object `$array` = [], int `$flags` = 0, string `$iteratorClass` = `ArrayIterator::class`)
public function append(mixed `$value`): void
public function asort(int `$flags` = `SORT_REGULAR`): true
public function count(): int
public function exchangeArray(array|object `$array`): array
public function getArrayCopy(): array
public function getFlags(): int
public function getIterator(): Iterator
public function getIteratorClass(): string
public function ksort(int `$flags` = `SORT_REGULAR`): true
public function natcasesort(): true
public function natsort(): true
public function offsetExists(mixed `$key`): bool
public function offsetGet(mixed `$key`): mixed
public function offsetSet(mixed `$key`, mixed `$value`): void
public function offsetUnset(mixed `$key`): void
public function serialize(): string
public function setFlags(int `$flags`): void
public function setIteratorClass(string `$iteratorClass`): void
public function uasort(callable `$callback`): true
public function uksort(callable `$callback`): true
public function unserialize(string `$data`): void
}

## 定義済み定数

## ArrayObject の定数

`ArrayObject::STD_PROP_LIST`

  オブジェクトのプロパティは (var_dump(), `foreach` などで) 配列としてアクセスしたときと同じ機能を持ちます

`ArrayObject::ARRAY_AS_PROPS`

  オブジェクトのエントリはプロパティとしてアクセスできます(読み書き可)。 ArrayObject クラスはオブジェクトにアクセスするのに独自のロジックを使います。よって、動的なプロパティを読み書きしようとしても警告やエラーは発生しません。

## 目次

- ArrayObject::append — 値を追加する
- ArrayObject::asort — 値でエントリをソートする
- ArrayObject::__construct — 新規配列オブジェクトを生成する
- ArrayObject::count — ArrayObject の public プロパティの数を取得する
- ArrayObject::exchangeArray — 配列を別の配列と交換する
- ArrayObject::getArrayCopy — ArrayObject のコピーを作成する
- ArrayObject::getFlags — 振る舞いのフラグを取得する
- ArrayObject::getIterator — ArrayObject インスタンスから新規イテレータを生成する
- ArrayObject::getIteratorClass — ArrayObject のイテレータクラス名を取得する
- ArrayObject::ksort — キーでエントリをソートする
- ArrayObject::natcasesort — 大文字小文字を区別しない "自然順" アルゴリズムでエントリをソートする
- ArrayObject::natsort — "自然順" アルゴリズムでエントリをソートする
- ArrayObject::offsetExists — 要求されたインデックスが存在するかどうかを返す
- ArrayObject::offsetGet — 指定したインデックスの値を返す
- ArrayObject::offsetSet — 指定したインデックスに新しい値をセットする
- ArrayObject::offsetUnset — 指定したインデックスの値を解除する
- ArrayObject::serialize — ArrayObject をシリアライズする
- ArrayObject::setFlags — 処理フラグを設定する
- ArrayObject::setIteratorClass — ArrayObject のイテレータクラス名を設定する
- ArrayObject::uasort — ユーザー定義の比較関数でエントリをソートし、キーとの対応は保持する
- ArrayObject::uksort — ユーザー定義の比較関数を使って、キーでエントリをソートする
- ArrayObject::unserialize — ArrayObject をアンシリアライズする

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open