PHP常用函数

组合数据和干预数据

/**
 * 组合数据和干预数据
*
$meddleData pos[] = array()
*/

function combineDataAndMeddleData($datalist, $meddleData, $size) {
$resultData = $combineData = array();
$tmpIndex = 0;
foreach ($meddleData as $i => $data) {
$tmpIndex = $i;
foreach ($resultData as $k => $v) {
if (isset($resultData[$tmpIndex])) {
$tmpIndex++;
}
}
foreach ($data as $val) {
$resultData[$tmpIndex] = $val['data'];
$tmpIndex++;
}
}
$meddleData = $resultData;


// 组合数据
// 去除重复数据
for ($i = 0; $i < $size; $i++) {
$tmpData = isset($meddleData[$i]) ? $meddleData[$i] : array_shift($datalist);
$tmpId = $tmpData['type'] . $tmpData['id'];
if(!isset($combineData[$tmpId])) {
$combineData[$tmpId] = $tmpData;
}
}
$combineData = array_values($combineData);
return $combineData;
}

二维数组排序

/**
 * 方法:根据指定字段 $sort_key 对指定数组 $multi_array 排序
 *
 * @param array $multi_array 需要排序的数组
 * @param string $sort_key   指定排序字段 -- 必须
 * @param int $sort          : 按升序排列。(A-Z) || SORT_DESC : 按降序排列。(Z-A)
 * @param int $type          || SORT_NUMERIC-将每一项按数字顺序排列 || SORT_STRING-将每一项按字母顺序排列
 *
 * @return array|bool
 */
function getMultiArraySort($multi_array, $sort_key, $sort = SORT_ASC, $type = SORT_NUMERIC) {
    if (is_array($multi_array)) {
        foreach ($multi_array as $row_array) {
            if (is_array($row_array)) {
                $key_array [] = $row_array [$sort_key];
            } else {
                return false;
            }
        }
    } else {
        return false;
    }
    array_multisort($key_array, $sort, $type, $multi_array);

    return $multi_array;
}
原文地址:https://www.cnblogs.com/bandbandme/p/10189718.html