轉換為數組組的方法
使用yii 的active record 來獲取查詢結果的時候,返回的結果集是乙個物件型別的,有時候為了資料處理的方便希望能夠轉成陣列返回。比如下面的方法:
// 查詢滿足指定條件的結果中的第一行
$post=post::model()->find($condition,$params);
// 查詢具有指定主鍵值的那一行
$post=post::model()->findbypk($postid,$condition,$params);
// 查詢具有指定屬性值的行
$post=post::model()->findbyattributes($attributes,$condition,$params);
返回一條結果的時候直接用 $post->attributes; 就可以了。
如果要返回findall陣列呢,要怎麼處理呢
有兩種方法:
第一種是使用自定義的函式,如下
/**
* 簡化findall資料
* */
function simplifydata($data)
return $newdata;
}
然後使用函式直接轉換結果
第二種是使用很簡單的方法:
$products = protuan::model()->findall($criteria);
$products = json_decode(cjson::encode($products),true);
作用是就先將findall結果先轉成json格式,然後再轉為陣列.
至於findall轉為josn格式其實就是使用
cjson::encode
陣列轉為物件
1.js裡將兩個陣列轉為物件,第乙個陣列為key,第二個為value。如 1,2,5 和 18,8,6 轉換成物件。2.js裡將多個陣列轉為物件,每個陣列只有兩個值,轉成的物件以每個陣列裡的首位為key,第二位為value。如 a,1 和 b,2 c,3 轉換成物件。只要使用underscore.j...
C DataTable轉為物件或物件列表
需求 從datatable中直接生成指定類的物件或物件列表 使用 datatable.tolistmodel using system using system.collections.generic using system.data using system.linq using system....
C DataTable轉為物件或物件列表
需求 從datatable中直接生成指定類的物件或物件列表 使用 datatable.tolistmodel using system using system.collections.generic using system.data using system.linq using system....