tags:

views:

33

answers:

2

I have an array:

Array ( [0] => stdClass Object ( [user_id] => 1 [ID] => 1 [user_login] => admin [display_name] => admin [user_email] => [email protected] [meta_value] => a:1:{s:13:"administrator";s:1:"1";} ) [1] => stdClass Object ( [user_id] => 4 [ID] => 4 [user_login] => ungtinflytande [display_name] => ungtinflytande [user_email] => [email protected] [meta_value] => a:1:{s:13:"administrator";s:1:"1";} ) [2] => stdClass Object ( [user_id] => 5 [ID] => 5 [user_login] => inflytandepilot [display_name] => inflytandepilot [user_email] => [email protected] [meta_value] => a:1:{s:6:"author";s:1:"1";} ) [3] => stdClass Object ( [user_id] => 11 [ID] => 11 [user_login] => matsbohman [display_name] => matsbohman [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) [4] => stdClass Object ( [user_id] => 12 [ID] => 12 [user_login] => klarakviberg [display_name] => klarakviberg [user_email] => [email protected] [meta_value] => a:1:{s:13:"administrator";s:1:"1";} ) [5] => stdClass Object ( [user_id] => 13 [ID] => 13 [user_login] => majafrankel [display_name] => majafrankel [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) [6] => stdClass Object ( [user_id] => 15 [ID] => 15 [user_login] => helenameier [display_name] => helenameier [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) [7] => stdClass Object ( [user_id] => 16 [ID] => 16 [user_login] => anitarosengren [display_name] => anitarosengren [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) [8] => stdClass Object ( [user_id] => 17 [ID] => 17 [user_login] => arvinchireh [display_name] => Arvin Chireh [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) [9] => stdClass Object ( [user_id] => 18 [ID] => 18 [user_login] => annikahallstrom [display_name] => annikahallstrom [user_email] => [email protected] [meta_value] => a:1:{s:6:"editor";s:1:"1";} ) )

that I wanna sort on the display_name-key. I currently print it like this:

foreach ($blogusers as $bloguser)

How do I do this?

A: 

You would use usort() - http://php.net/usort

My suggestion would be:

    function cmp($a, $b)
    {
        return strcmp($a->display_name, $b->display_name);
    }

    usort($blogusers, "cmp");

    foreach ($blogusers as $bloguser)
    {
        ...
Repox
A: 

See usort: http://php.net/manual/en/function.usort.php

usort($array, "my_cmp");

function my_cmp($a, $b) {
  if ($a->display_name == $b->display_name) {
    return 0;
  }
  return ($a->display_name < $b->display_name) ? -1 : 1;
}
Mike C