PHPコレクションを配列に変換する方法
PHP 開発プロセスでは、コレクション型のデータを処理する必要があることがよくあります。 PHP のコレクション型データは通常、オブジェクトで構成される配列です。これらのコレクション データを処理する必要がある場合、後続の処理操作を容易にするためにデータを配列形式に変換する必要がある場合があります。この記事では、PHPのコレクションを配列に変換する方法を紹介します。
1. foreach ループの使用
PHP コレクションを配列に変換する最も一般的な方法は、foreach ループを使用することです。たとえば、次のコレクションについて考えてみましょう:
$col = new Collection();
$col->add(new Foo("Bill", "Denver"));
$col->add(new Foo("ジェーン", "シアトル"));
$col->add(new Foo("テッド", "サンフランシスコ")) ;
これは、foreach ループを使用して簡単に配列に変換できます:
$arr = array();
foreach ($col as $item) {
$arr[] = $item->getName();
}
このように、$arr はすべての Foo オブジェクトの name 属性を保存します。
2. array_map 関数を使用する
もう 1 つの方法は、PHP の組み込みの array_map() 関数を使用することです。 array_map() 関数は、配列と無名関数をパラメータとして受け取り、配列内の各要素を変換処理のために無名関数に渡すことができます。たとえば、次のコレクションがあるとします。
$col = new Collection();
$col->add(new Foo("Bill", "Denver"));
$col->add(new Foo("ジェーン", "シアトル"));
$col->add(new Foo("テッド", "サンフランシスコ") ) );
すべての Foo オブジェクトの name 属性を配列に抽出するには、次のコードを使用できます:
$arr = array_map(function($item) {
return $item->getName();
}, $col->toArray());
このようにして、$arr はすべての名前属性を保存します。フーオブジェクト。
3. array_column 関数を使用する
PHP には、多次元配列から列を抽出して新しい 1 次元配列を形成できる便利な組み込み関数 array_column() も用意されています。 。たとえば、次のコレクションがあるとします:
$data = array(
array('id' => 1, 'name' => 'Bill', 'city' = > 'デンバー'),
array('id' => 2, 'name' => 'ジェーン', 'city' => 'シアトル'),
array('id' => 3, 'name' => 'Ted', 'city' => 'San Francisco')
);
すべての都市 属性を配列として抽出するには、次のコードを使用できます:
$arr = array_column($data, 'city');
このようにして、すべての都市の属性値が抽出されます。 $arr に保存されます。
要約すると、PHP コレクション データを処理するときに、それを配列形式に変換すると、その後の処理操作が容易になります。この記事では、よく使用される 3 つの方法 (foreach ループの使用、array_map 関数の使用、array_column 関数の使用) を紹介します。開発者は実際の状況に応じて最適な方法を選択できます。
以上がPHPコレクションを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









