Skip to content

Instantly share code, notes, and snippets.

@digitaldreams
Created November 30, 2018 03:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save digitaldreams/1931c30dfc03d5f00844b2225e19b107 to your computer and use it in GitHub Desktop.
Save digitaldreams/1931c30dfc03d5f00844b2225e19b107 to your computer and use it in GitHub Desktop.
Wilber Group Code Challenge
$people = '{"data":[{"first_name":"jake","last_name":"bennett","age":31,"email":"jake@bennett.com","secret":"VXNlIHRoaXMgc2VjcmV0IHBocmFzZSBzb21ld2hlcmUgaW4geW91ciBjb2RlJ3MgY29tbWVudHM="},{"first_name":"jordon","last_name":"brill","age":85,"email": "jordon@brill.com","secret":"YWxidXF1ZXJxdWUuIHNub3JrZWwu"}]}';
class priority extends SplHeap
{
public function compare($array1, $array2)
{
if ($array1['age'] > $array2['age']) {
return 1;
} elseif ($array1['age'] == $array2['age']) {
return 0;
} else {
return -1;
}
}
}
$decendingOrder = [];
$priority = new priority();
$peopArr = json_decode($people, true);
foreach ($peopArr['data'] as $person) {
$priority->insert($person);
}
while ($priority->valid()) {
$p = $priority->current();
$fname = $p['first_name'] ?? '';
$lname = $p['last_name'] ?? '';
$p['name'] = $fname . ' ' . $lname;
$decendingOrder[] = $p;
$priority->next();
}
$emailAddresses = array_column($decendingOrder, 'email');
print_r($decendingOrder);
print_r($emailAddresses);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment