我有一个像这样的数组
Array (
[0] => Array (
[label] => G2 )
[1] => Array (
[label] => Samsung Galaxy S4 ) )
我想将它转换为类似这样的数组
array (
'label' => array(
'optionone' => array('G2'),
'optiontwo' => array('Samsung Galaxy S4'))),
答案 0 :(得分:0)
由于数值也很好,试试这个
$newArray = array('label');
foreach ( $array = $k=>$a ) {
$newArray['label'][ 'option' . $k+1 ] = $a['label'];
}
答案 1 :(得分:0)
在这里你必须 foreach 数组来迭代每个索引 [0],[1] 等。在数组内部你必须创建一个多维数组
$var['label'][] = $value; .
然而对于像optionone这样的关联数组,选项你需要连接'选项'+将整数1,2,3转换为一,二,三等。
将1,2,3转换为一,二,三。请点击这里 Converting a number (1, 2, 3) to a string (one, two, three) in PHP
答案 2 :(得分:0)
我认为这给了你想要的东西,但结构对我来说有点奇怪。也可能有一个魔术函数填充$num2str
。
$a = Array (Array ( 'label' => 'G2' ), Array ( 'label' => 'Samsung Galaxy S4' ) );
$b = array();
$num2str = array('one', 'two', 'three', ..);
foreach($a as $i => $phone_info) {
$b['label']['option' . $num2str[$i]] => array($phone_info['label']);
}
答案 3 :(得分:0)
option1
,option2
密钥更有用,而不是optionone
,optiontow
,
试试这段代码
$array1 = Array (Array ("label" => "G2" ), Array ( "label" => "Samsung Galaxy S4" ) );
$array2 = array();
$array2['label'] = array();
for($i=0; $i < count($array1); $i++){
$array2['label']["option{$i}"] = $array1[$i]['label'];
}
print_r($array2);