如何将数组转换为其他格式


How to convert an array to a different format?

嗨我想转换这个数组,其中id作为密钥和名称值对

Array(
    [4882] => treatment
    [4876] => Advance
    [4854] => Applied Clinical
)

Array(
    [0] => Array([id] => 4882, [name] => treatment)
    [1] => Array([id] => 4876, [name] => Advance)
    [2] => Array([id] => 4854, [name] => Applied Clinical)
)
foreach ($original_array as $key=>$value){
    $new_arrays[] = array('id'=>$key,'name'=>$value);
}
print_r($new_arrays);

您可以这样做:

$output_arr = array();
foreach($input_arr as $key => $value)
  $output_arr[] = array('id' => $key, 'name' => $value);

然后您可以使用$output_arr作为转换后的数组,或者将其内容分配给$input_arr:

$input_arr = &$output_arr;

$input是您的第一个数组,$output将保存生成的数组

$output = array();
foreach ($input as $id => $name)
{
  $output[] = array('id'=>$id, 'name'=>$name);
}