2012-07-31 91 views
0

我需要使用数组的帮助。我有一个来自MySQL查询的数据。在for循环中打印后,我得到以下array_flip:如何将数组索引键更改为MySQL值

Array ( 

    [Duru 60] => 0 
    [Maxwell 50] => 1 
    [Fashanu 70] => 2 
    [Nwankwo 80] => 3 
    [Obi 0] => 4 

    ) 

数组值是2个字段名称和总分的组合。我想实现的是一个数组,像这样:

Array (

    [Duru 60] => 60 
    [Maxwell 50] => 50 
    [Fashanu 70] => 70 
    [Nwankwo 80] => 80 
    [Obi 0] => 0 

    ) 

我想实现的是默认的阵列数字键(0,1,2,3,4)更改为从查询得到的总分数。

这里是给第一阵列块中的代码:

PHP代码开始

$dataA = array(); 

    foreach($data as $key => $val){ 

$dataC = $val['lastname']." ".$val['total']; 
array_push($dataA,($dataC)); 

    } 
    $dataD = (array_flip($dataA)); 

    print_r($dataD); 

回答

1
$dataA = array(); 
foreach($data as $key => $val){ 
    $dataK = $val['lastname']." ".$val['total']; 
    $dataV = $val['total']; 
    $dataA[$dataK] = $dataV; 
} 
print_r($dataA); 
+0

这是我需要的。你们是最好的。肯定会回来更多 – user1565795 2012-07-31 14:44:24

1

试试这个:

$dataA = array(); 

    foreach($data as $key => $val){ 

      $dataC = $val['lastname']." ".$val['total']; 

      $dataA[$dataC] = $val['total']; 

    } 

    print_r($dataA); 
+0

关闭但不是我得到这个 – user1565795 2012-07-31 14:33:01

+0

Array([60] => Duru 60 [Duru 60] => 0 [50] => Maxwell 50 [Maxwell 50] => 1 [70] => Fashanu 70 [ Fashanu 70] => 2 [80] => Nwankwo 80 [Nwankwo 80] => 3 [0] => Obi 0 [Obi 0] => 4) – user1565795 2012-07-31 14:33:21

1

为什么你不能只是做:

$newData = array(); 
foreach($data as $key => $val) { 
    $newData[$val['lastname'] . ' ' . $val['total']] = $val['total']; 
} 
print_r($newData); 
相关问题