LHC大神問的矩陣轉置問題

數學中線性代數中提到的矩陣轉置,其實在咱們的業務場景中也有須要的地方,好比LHC大神問到的這個問題php

那麼如何進行行列轉換呢?學習

代碼以下:spa

<?php

$array=array(
    '部門1'=>array('費用1'=>100,'費用2'=>200,'費用3'=>300),
    '部門2'=>array('費用1'=>90,'費用2'=>100,'費用3'=>90),
    '部門3'=>array('費用1'=>60,'費用2'=>60,'費用3'=>60),
    '部門4'=>array('費用1'=>60,'費用2'=>60,'費用3'=>60),
);

function handle_column_array($array)
{
    $original_array=$array;
    $result=array();
    $first=array_shift($array);
    $keys=array_keys($first);
    foreach ($original_array as $k=>$v)
    {
        foreach ($keys as $val)
        {
            $result[$val][$k]=$v[$val];
        }
    }
    return $result;
}
$columns=array_keys($array);
array_unshift($columns,'費用類型');
$table=handle_column_array($array);

echo "<table border='1'>";
echo "<tr><td>".implode("</td><td>",$columns)."</td></tr>";
foreach ($table as $key => $value)
{
    array_unshift($value,$key);
    echo "<tr><td>".implode("</td><td>",$value)."</td></tr>";
}
echo "</table>";

exit();

截圖以下:code

運行效果如圖:blog

表格轉置在我以前剛學習PHP的時候就處理過這種問題,當時爲了寫學生老師選課成績系統作的,這裏附帶上當時系統作完後於2013-8-7 10:04創做的詩一首數學

相關文章
相關標籤/搜索