<?php
$gfg_array = array(
array(
'score' => '100',
'name' => 'Sam',
'subject' => 'Data Structures'
),
array(
'score' => '50',
'name' => 'Tanya',
'subject' => 'Advanced Algorithms'
),
array(
'score' => '75',
'name' => 'Jack',
'subject' => 'Distributed Computing'
)
);
class geekSchool {
var $score, $name, $subject;
public function geekSchool($data) {
$this->name = $data['name'];
$this->score = $data['score'];
$this->subject = $data['subject'];
}
}
function data2Object($data) {
$class_object = new geekSchool($data);
return $class_object;
}
function comparator($object1, $object2) {
return $object1->score > $object2->score;
}
$school_data = array_map('data2Object', $gfg_array);
print("Original object array:\n");
print_r($school_data);
usort($school_data, 'comparator');
print("\nSorted object array:\n");
print_r($school_data);
?>