PHP头条
热点:

php对结果集数组字段进行过滤的方法


给接口方返回数据的时候,经常被要求只返回需要的字段,于是自己写了两个方法分别用于过滤获取结果集中的不需要的字段,使用的过程中需要先定义一个过滤的key数组,然后调用对应的方法处理即可。

过滤单个结果集:

function filterResult(array &$result, array &$filter_key) {
    if (!$result) {
        return false;
    }

    $result = array_intersect_key($result, $filter_key);

    foreach ($filter_key as $key => $value) {
        if (is_array($value) && $value && !empty($result[$key])) {
            if (count($result[$key]) != count($result[$key], 1)) {
                if (is_numeric(key($value))) {
                    $result[$key] = array_column($result[$key], reset($value));
                } else {
                    foreach ($result[$key] as &$_value) {
                        $_value = array_intersect_key($_value, $value);
                    }
                }
            } else {
                $result[$key] = array_intersect_key($result[$key], $value);
            }
        }
    }
}

过滤结果集数组:

function filterResultList(array &$result_list, array &$filter_key) {
    if (!$result_list) {
        return false;
    }

    foreach ($result_list as $key => &$result) {
        filterResult($result, $filter_key);
    }
}

www.phpzy.comtrue/php/12949.htmlTechArticlephp对结果集数组字段进行过滤的方法 给接口方返回数据的时候,经常被要求只返回需要的字段,于是自己写了两个方法分别用于过滤获取结果集中的不需要的字段,使用的过程中需要先...

相关文章

相关频道:

PHP之友评论

今天推荐