VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • PHP 二维数组相关函数:二维数组指定key排序,二维数组转一维数组,两个二维

一、二维数组转一维数组

复制代码
function towarr_to_onearr($arr,$item)
{
    foreach ($arr as $key => $value) {
        $newArr[] = $value[$item];
    }
    return $newArr;
}
复制代码

二、对二维数组进行指定key排序

复制代码
/**
* @desc 对二维数组进行指定key排序
* @param $arr 二维数组
* @param $shortKey  需要排序的列
* @param $short  排序方式
* @param $shortType 排序类型
*/
function multi_array_sort($arr,$shortKey,$short=SORT_DESC,$shortType=SORT_REGULAR)
{
    foreach ($arr as $key => $data){
        $name[$key] = $data[$shortKey];
    }
        array_multisort($name,$shortType,$short,$arr);
    return $arr;
}
复制代码

三、二维数组转一维数组

复制代码
/**
* @param $arr 数组
* @param $item 指定的项  
*/
function towarr_to_onearr($arr,$item)
{
    foreach ($arr as $key => $value) {
        $newArr[] = $value[$item];
    }
    return $newArr;
}
复制代码

四、两个二维数组取差集

复制代码
/**
* @param $arr1 数组
* @param $arr2 数组
* @param $key 对比的值 唯一
*/
function get_diff_array($arr1,$arr2,$key)
{
    $res = array();
    foreach($arr1 as $v) {
            $tmp[$v[$key]] = $v;
    };
    foreach($arr2 as $v) {
        if(! isset($tmp[$v[$key]])) {
            if (!empty($v)) {
                $res[] = $v;
            }
        }
    };
    return $res;
}
复制代码

五、对象转数组

复制代码
/**
* @param $obj 对象
*/
function objToArray($obj)
{
    return json_decode(json_encode($obj), true);
}
复制代码

六、判断元素是否在多维数组中

复制代码
/**
 *  判断元素是否在多维数组中
 * @param $str 需要判断的元素
 * @param $array 数组
 * @return bool
 */
function deep_in_array($str, $array) {   
    foreach($array as $item) {   
        if(!is_array($item)) {   
            if ($item == $str) {  
                return true;  
            } else {  
                continue;
            }  
        }   
            
        if(in_array($str, $item)) {  
            return true;      
        } else if(deep_in_array($str, $item)) {  
            return true;      
        }  
    }   
    return false;   
}
复制代码

 

出处:https://www.cnblogs.com/zxf100/p/17370176.html

相关教程