ホームページ  >  記事  >  php教程  >  Yii2.0 ArrayHelper::map() の使用方法

Yii2.0 ArrayHelper::map() の使用方法

黄舟
黄舟オリジナル
2017-01-03 09:33:271927ブラウズ

多次元配列または配列からマッピング (キーと値の形式で) を構築します。

マッピング関係は、「$from」および「$to」パラメーターを通じて対応するキー値または属性名を指定することによって設定されます。

もちろん、グループ化フィールド「$group」に基づいてマッピングをさらにグループ化することもできます。

例:

$array = [

['id' => '123', 'name' => 'aaa', 'class' => 'x'],

['id' => '124', 'name' => 'bbb', 'class' => 'x'],

['id' => '345', 'name' => 'ccc', 'class' => 'y'],

];

上記の配列は次のメソッドを実行します

还可以添加第四个参数  
  
$result = ArrayHelper::map($array, 'id', 'name', 'class');

結果は

[

'x' => [

'123' => 'aaa',

'124' => 'bbb',

],

'y' => [

'345' => 'ccc',

],

]

以下はmapメソッドの詳細コードです

​​
/**
* @paramarray $array
* @param string|Closure $from
* @param string|Closure $to
* @param string|Closure $group
* @return array
*/
public static function map($array, $from, $to, $group = null)
{
$result = [];
foreach ($array as $element) {
$key = static:: getValue($element, $from);
$value = static:: getValue($element, $to);
if ($group !== null) {
$result[ static:: getValue($element, $group)][$key] = $value;
} else {
$result[$key] = $value;
}
}
return $result;
}


上記はYii2.0 ArrayHelper:: map() 使用方法については、PHP 中国語 Web サイト (www.php.cn) の関連コンテンツに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。