[英]How to convert multidimensional array to simple array using values as a keys
How to convert multidimensional array from the example below 如何从下面的示例转换多维数组
Array
(
[0] => Array
(
[cf] => Juan
[nf] => 5
)
[1] => Array
(
[cf] => Kyu
[nf] => 10
)
)
to an simple array using values as keys and values where [cf] is a key and [nf] is value 到使用值作为键和值的简单数组,其中[cf]是键,[nf]是值
Array
(
"Juan"=>"5",
"Kyu"=>"10"
)
$arr = array(
0 => array(
'cf' => 'Juan',
'nf' => 5
),
1 => array(
'cf' => 'Kyu',
'nf' => 10
)
);
$result = array();
foreach($arr as $key => $value) {
$result[$value['cf']] = $value['nf'];
}
print_r($result);
You can do like .. 你可以做..
<?php
$arr = array( 0 => array( "cf" => "Juan", "nf" => 5, ),1 => array( "cf" => "Kyu", "nf" => 10, ),);
foreach ($arr as $arr1)
{
foreach($arr1 as $k=>$v)
{
$arrnew[]=$v; // Adding just the values to the temp array
}
$new_arr[$arrnew[0]]=$arrnew[1]; //Your new array gets those values from the temp array
unset($arrnew); //Deleting your temp array
}
print_r($new_arr); //Printing the results
OUTPUT :
Array
(
[Juan] => 5
[Kyu] => 10
)
try like this: 尝试这样:
$a = array(array('cf'=>'joan', 'nf'=>'5'), array('cf'=>'lol', 'nf'=>'55'));
$new = array();
foreach( $a as $k ) {
$new[$k[cf]] = $k[nf];
}
print_r( $new )
$x=array(
0=>array(
"cf"=>"Juan",
"nf" => 5,
),
1=>array(
"cf"=>"Kyu",
"nf" => 10,
),
);
foreach($x as $k=>$v) $result[$v["cf"]]=$v["nf"];
print_r($result);
you iterate through it, and build up your array, like this: 您遍历它,并建立您的数组,如下所示:
$mysimplearray = array();
foreach($originalarray as $id => $innerarray) {
$mysimplearray[$innerarray["cf"]] = $innerarray["nf"];
}
voila, your data is stored now as a simple 1 dimension array, in $simplearray. 瞧,您的数据现在以简单的一维数组形式存储在$ simplearray中。
Here you have your function: 这是您的功能:
$array =
array (
0 => Array
(
'cf' => 'Juan',
'nf' => 5
),
1 => Array
(
'cf' => 'Kyu',
'nf' => 10
)
);
$new_array = array();
foreach($array as $value => $new_array_elem) {
$key = $new_array_elem['cf'];
$value = $new_array_elem['nf'];
$new_array["$key"] = $value;
}
print_r($new_array);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.