안녕하세요. 약간의 문제가있어 답변을 찾을 수없는 것 같습니다. 나는 배열을 가진 배열을 가지고 있으며 필드에 대해 동일한 값을 기반으로 그룹으로 이러한 하위 배열을 그룹화하려고합니다. 이 코드는 내 코드이며 값 내 배열을 기반으로 배열을 정렬 할 수 있습니다. 공유 값을 기준으로 결과를 그룹화하려면 어떻게합니까? 아마 날짜에 따라 몇 가지로 모든 값을 알 수 없습니다 내가 원하는 인스턴스 그룹 하루에 모든/월값으로 배열 내의 PHP 그룹화 배열
if($filter == "ORDER BY TODO_REF DESC"){
$type_sort = 0;
};
if($filter == "ORDER BY TODO_PRIO DESC"){
$type_sort = 2;
};
if($filter == "ORDER BY TODO_DEAD DESC"){
$type_sort = 3;
};
function aasort (&$array, $key) {
$sorter=array();
$ret=array();
reset($array);
foreach ($array as $ii => $va) {
$sorter[$ii]=$va[$key];
}
asort($sorter);
foreach ($sorter as $ii => $va) {
$ret[$ii]=$array[$ii];
}
$array=$ret;
}
aasort($test_array, $type_sort);
print_r($test_array);
전류 출력 :
priority
Array
(
[3] => Array
(
[0] => 2
[1] => sdfsdgdfgdfgdfg
[2] => 3
[3] => 2013-05-30 13:53:23
)
[2] => Array
(
[0] => 1
[1] => This must also be done
[2] => 4
[3] => 2013-03-28 12:13:34
)
[1] => Array
(
[0] => 1
[1] => testing this show me 2
[2] => 5
[3] => 2029-02-23 17:27:20
)
[0] => Array
(
[0] => 1
[1] => Do this task and make sure it gets done
[2] => 5
[3] => 2013-06-28 12:12:41
)
)
뭔가 될 것 원하는 것은
Array
(
[3] => Array
(
[0] => 2
[1] => sdfsdgdfgdfgdfg
[2] => 3
[3] => 2013-05-30 13:53:23
)
)
Array
(
[2] => Array
(
[0] => 1
[1] => This must also be done
[2] => 4
[3] => 2013-03-28 12:13:34
)
)
Array
(
[1] => Array
(
[0] => 1
[1] => testing this show me 2
[2] => 5
[3] => 2029-02-23 17:27:20
)
[0] => Array
(
[0] => 1
[1] => Do this task and make sure it gets done
[2] => 5
[3] => 2013-06-28 12:12:41
)
)
그래서이 작업은 2 개의 어레이를 만드는 것으로 이해합니다. 내가 print_r $ test_array [0]; 나는 배열을 얻지 만 그 배열은 왜 1과 같은가? 또한이 작업은 두 개의 배열에 배치되지만 하위 배열 값에서이 작업을 수행하지 않는 것입니까? 또한 날짜를 사용할 때 그룹화 할 값이 더 많아 지므로 배열을 동적으로 추가해야합니다. –
그러면'$ array_1'과'$ array_2' 대신 자동 생성 된'$ array [$ i]'를 사용해야합니다 – Raptor