YII框架中封裝好了的數(shù)據(jù)庫操作函數(shù),默認(rèn)輸出的時(shí)候,將數(shù)據(jù)庫字段名作為數(shù)組的鍵名進(jìn)行輸出,但是有些時(shí)候帶有鍵名的數(shù)據(jù)不能夠滿足未知情況下的操作,譬如:數(shù)據(jù)庫數(shù)據(jù)導(dǎo)出為EXCEL等比較非正常的操作。
所以這邊需要對(duì)數(shù)據(jù)庫結(jié)果集進(jìn)行解析,下面就是針對(duì)這種特殊情況的一個(gè)簡(jiǎn)單方法:
復(fù)制代碼 代碼如下:
/**
* @todo 針對(duì)YII 查詢輸出帶有數(shù)據(jù)庫表字段名鍵名進(jìn)行優(yōu)化EXCEL表格輸出
* @todo 替換鍵名為0、1、2...
* @param array $data
* @return array('excel_title'=array(),'excel_ceils'=array());
*/
public function excelDataFormat($data){
for ($i=0;$i<count($data);$i++){
$each_arr=$data[$i];
$new_arr[]=array_values($each_arr); //返回所有鍵值
}
$new_key[]=array_keys($data[0]); //返回所有索引值
return array('excel_title'=>$new_key[0],'excel_ceils'=>$new_arr);
}
此處作者寫這個(gè)方法就是純粹為了處理EXCEL導(dǎo)出使用的,要是在項(xiàng)目中經(jīng)常用到,可以重新?lián)Q個(gè)名字喲!