How can PHP arrays be sorted based on multiple criteria, such as first name and last name?

When sorting PHP arrays based on multiple criteria, such as first name and last name, you can use the `usort` function along with a custom comparison function. This function should compare the elements based on the desired criteria, in this case, first name and last name.

// Sample array of users with first and last names
$users = array(
    array('first_name' => 'John', 'last_name' => 'Doe'),
    array('first_name' => 'Alice', 'last_name' => 'Smith'),
    array('first_name' => 'Bob', 'last_name' => 'Johnson')
);

// Custom comparison function to sort by first name and then last name
usort($users, function($a, $b) {
    if ($a['first_name'] == $b['first_name']) {
        return strcmp($a['last_name'], $b['last_name']);
    }
    return strcmp($a['first_name'], $b['first_name']);
});

// Print sorted array
print_r($users);