Home  >  Article  >  php教程  >  Sort Objects by Property with?PHP

Sort Objects by Property with?PHP

WBOY
WBOYOriginal
2016-06-06 20:08:512030browse

I recently needed to display a list of authors within a WordPress blog. ?The goal was to sort the author list by number of posts before outputting the list. ?The method for calculating number of posts isnt a sortable key within WordPress g

I recently needed to display a list of authors within a WordPress blog. ?The goal was to sort the author list by number of posts before outputting the list. ?The method for calculating number of posts isn’t a sortable key within WordPress’ get_posts, so I had to sort the result list myself. ?PHP’s usort method, along with a custom function, allows you to accomplish the feat of sorting a collection of objects by key.

The PHP

The first step is creating the function that does the sorting — this is that function:

function sort_objects_by_total($a, $b) {
	if($a->total_posts == $b->total_posts){ return 0 ; }
	return ($a->total_posts total_posts) ? -1 : 1;
}

The function returns -1 (smaller than), 0 (equal to), or 1 (larger than) when doing the sort comparisons. ?The last is applying the sortation function to the array, which is done by usort:

usort($users, 'sort_objects_by_total');

The code above now ensures that my authors array is sorted by total_posts. ?Keep this snippet in your PHP toolbox for the future — I’m certain you’ll need it at one time or another.

Read the full article at: Sort Objects by Property with PHP

Treehouse

Sencha Conference

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn