아래와 유사한 구조를 가진 배열을 고려해보세요.
$array = [ [ 'id' => 2, 'type' => 'comment', 'text' => 'hey', 'datetime' => '2010-05-15 11:29:45', ], [ 'id' => 3, 'type' => 'status', 'text' => 'oi', 'datetime' => '2010-05-26 15:59:53', ], [ 'id' => 4, 'type' => 'status', 'text' => 'yeww', 'datetime' => '2010-05-26 16:04:24', ], ];
어떻게 할 수 있나요? 이 배열을 'datetime' 요소로 정렬하시겠습니까?
PHP의 usort() 함수는 배열과 요소의 순서를 결정하는 비교 함수를 사용합니다. 다음과 같이 date_compare라는 사용자 정의 비교 함수를 생성할 수 있습니다.
function date_compare($a, $b) { $t1 = strtotime($a['datetime']); $t2 = strtotime($b['datetime']); return $t1 - $t2; }
이 함수는 각 레코드의 'datetime' 필드에 대한 UNIX 타임스탬프를 추출하고 그 차이를 반환합니다. 이 정보는 usort()에서 배열을 정렬하는 데 사용됩니다.
마지막으로 usort()를 사용하여 배열에 정렬 함수를 적용할 수 있습니다.
usort($array, 'date_compare');
'datetime' 요소를 기준으로 오름차순으로 배열을 정렬합니다.
위 내용은 날짜/시간 요소를 기준으로 다차원 PHP 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!