배열은 키 이름을 유지하면서 uasort() 함수를 통해 정렬할 수 있습니다. 타임스탬프를 기준으로 정렬하려면 요소의 타임스탬프 필드를 비교하는 사용자 정의 비교 함수인 Compare_timestamps를 사용할 수 있습니다. 실제 사례에서 이 비교 함수는 키 이름을 유지하면서 배열의 타임스탬프를 정렬하고 정렬된 배열을 작은 것부터 큰 것 순으로 출력하는 데 사용됩니다.
키를 유지하면서 PHP에서 타임스탬프를 기준으로 배열 정렬
PHP에서는 uasort()
함수를 사용하여 키 이름을 유지하면서 배열을 정렬할 수 있습니다. 다음은 배열 정렬을 위한 구문입니다. uasort()
函数对数组进行排序,同时保留其键名。这是排序数组的语法:
uasort($array, $sort_function);
其中,$array
是要排序的数组,$sort_function
是用户定义的比较函数。
排序比较函数
排序比较函数必须遵循特定的格式:
function sort_function(mixed $a, mixed $b): int
它需要接受两个参数,$a
和 $b
,这些参数代表要比较的数组元素。函数应该返回以下值:
-1
:如果 $a 应该排在 $b 之前。0
:如果 $a 和 $b 相等。1
:如果 $a 应该排在 $b 之后。基于时间戳排序
要基于时间戳对数组进行排序,我们可以使用以下排序比较函数:
function compare_timestamps(mixed $a, mixed $b): int { return $a['timestamp'] - $b['timestamp']; }
此函数比较数组元素中的 timestamp
$array = [ 'item1' => ['timestamp' => 1593475200], 'item2' => ['timestamp' => 1601260800], 'item3' => ['timestamp' => 1584230400], ]; uasort($array, 'compare_timestamps'); print_r($array);여기서
$array
는 정렬할 배열이고 $sort_function
은 사용자 정의 비교 함수입니다. 정렬 비교 기능
정렬 비교 기능은 특정 형식을 따라야 합니다:Array ( [item3] => Array ( [timestamp] => 1584230400 ) [item1] => Array ( [timestamp] => 1593475200 ) [item2] => Array ( [timestamp] => 1601260800 ) )두 개의 매개 변수
$a
및 $b
를 허용해야 합니다. 매개변수 비교할 배열 요소를 나타냅니다. 함수는 다음 값을 반환해야 합니다:
-1
: $a가 $b 앞에 와야 하는 경우. 0
: $a와 $b가 동일한 경우. 1
: $a가 $b 뒤에 와야 하는 경우. 타임스탬프를 비교합니다. elements code> 필드를 입력하고 요소를 순서대로 배치하는 데 적합한 값을 반환합니다. 🎜🎜🎜 실제 예 🎜🎜🎜 다음은 정렬 기능을 사용하여 배열의 타임스탬프를 정렬하는 실제 예입니다. 🎜rrreee🎜 출력: 🎜rrreee🎜 보시다시피 배열은 키 이름을 유지하면서 타임스탬프 순서로 정렬되었습니다. 🎜
위 내용은 PHP를 사용하여 키 이름을 유지하면서 배열의 타임스탬프를 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!