I am currently creating a sorting method that consists of values from an mysql query.
Here's a brief view of the array:
Array
(
[0] => Array
(
['id'] = 1;
['countries'] = 'EN,CH,SP';
)
[1] => Array
(
['id'] = 2;
['countries'] = 'GE,SP,SV';
)
)
I have succeeded in making a normal usort based on the numeric id values, but I rather want to sort the array by the content of the "countries" field (if it contains a set string, a country code in this case), and then by the id field.
The following snippet was my first idea of how to do it, but I have no idea of how to incorporate it into an working function:
in_array('EN', explode(",",$a['countries']) );
How would you do it?
Thanks!
I am really getting nowhere with this unfortunately.
Here is what I have for the moment, and its giving me nothing but errors: uasort() [function.uasort]: Invalid comparison function
function compare($a, $b) {
global $usercountry;
if ( in_array($usercountry, $a['countries']) && in_array($usercountry, $a['countries']) ) {
$return = 0;
}
else if (in_array($usercountry, $a['countries'])) {
$return = 1;
}
else {
$return = -1;
}
return $return;
}
$array= usort($array, "compare");
Is there anyone who might give me a hint of how to go on with it?