FOREACH ループを使用してすべての色またはすべての果物のみを取得する方法を知っている人はいますか?
$article = array(
array( 'color'=>'green','fruit'=>'apples'),
array( 'color'=>'orange','fruit'=>'oranges '),
array( 'color'=>'red','fruit'=>'cherry')
);
前もって感謝します!
FOREACH ループを使用してすべての色またはすべての果物のみを取得する方法を知っている人はいますか?
$article = array(
array( 'color'=>'green','fruit'=>'apples'),
array( 'color'=>'orange','fruit'=>'oranges '),
array( 'color'=>'red','fruit'=>'cherry')
);
前もって感謝します!
基本的にピボット操作が必要です。このハックなアプローチはそれを行います:
$articles = array(
array( 'color'=>'green','fruit'=>'apples'),
array( 'color'=>'orange','fruit'=>'oranges '),
array( 'color'=>'red','fruit'=>'cherry')
);
foreach ($articles as $article) {
foreach ($article as $type => $value) {
${$type}[] = $value;
}
}
print_r($fruit);
print_r($color);
array_map
これにより適しています:
$colors = array_map(function($a) {return $a['color'];},$article);
$fruits = array_map(function($a) {return $a['fruit'];},$article);