-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy patharray.func.php
71 lines (66 loc) · 1.01 KB
/
array.func.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
//将混合型数组换成以$key为键的新数组,以便其他操作
function array_index($arr, $key)
{
if( empty($arr) ) {
return array();
}
$new_arr = array();
foreach($arr as $val)
{
$new_arr[$val[$key]] = $val;
}
return $new_arr;
}
function array_sort2($arr,$keys,$type='asc')
{
if( empty($arr) ) return false;
$keysvalue = $new_array = array();
foreach ($arr as $k=>$v)
{
$keysvalue[$k] = $v[$keys];
}
if ($type == 'asc')
{
asort($keysvalue);
}
else
{
arsort($keysvalue);
}
reset($keysvalue);
$count = count($keysvalue);
foreach ($keysvalue as $k=>$v)
{
if ($type == 'asc')
{
$new_array[$k] = $arr[$k];
}
else
{
$new_array[$count-1 - $k] = $arr[$k];
}
}
return $new_array;
}
function array2object($d)
{
if (is_array($d)) {
return (object) array_map(__FUNCTION__, $d);
}
else {
return $d;
}
}
function object2array($d)
{
if (is_object($d)) {
$d = get_object_vars($d);
}
if (is_array($d)) {
return array_map(__FUNCTION__, $d);
}
else {
return $d;
}
}