封装方法
二维数组去重
/**
* @param 二维数组去重
* @param
* @return 去重后的数组
*/
function sys_assoc_unique($arr, $key) {
$rAr=array();
for($i=0;$i<count($arr);$i++) {
if(!isset($rAr[$arr[$i][$key]])) {
$rAr[$arr[$i][$key]]=$arr[$i];
}
}
$arr=array_values($rAr);
return $arr;
}
二维数组转字符串
/**
* @param 二维数组转字符串
* @param
* @return 字符串
*/
function sys_arr2str ($arr){
foreach ($arr as $v){
$v = join(",",$v); //可以用implode将一维数组转换为用逗号连接的字符串
$temp[] = $v;
}
$t="";
foreach($temp as $v){
$t.=$v.",";
}
$t=substr($t,0,-1);
return $t;
}
对查询结果集进行排序
/**
* 对查询结果集进行排序
* @access public
* @param array $list 查询结果
* @param string $field 排序的字段名
* @param string $sortby 排序类型 (asc正向排序 desc逆向排序 nat自然排序)
* @return array
*/
function sys_list_sort_by($list, $field, $sortby = 'asc')
{
if (is_array($list))
{
$refer = $resultSet = array();
foreach ($list as $i => $data)
{
$refer[$i] = &$data[$field];
}
switch ($sortby)
{
case 'asc': // 正向排序
asort($refer);
break;
case 'desc': // 逆向排序
arsort($refer);
break;
case 'nat': // 自然排序
natcasesort($refer);
break;
}
foreach ($refer as $key => $val)
{
$resultSet[] = &$list[$key];
}
return $resultSet;
}
return false;
}
评论 (0)