How can a list of words and multi-digit numbers be sorted in PHP according to a specific sequence?

To sort a list of words and multi-digit numbers in PHP according to a specific sequence, you can use the usort function along with a custom comparison function. In the comparison function, you can define the desired sorting sequence by assigning weights to different types of elements (words, numbers) and comparing them accordingly.

$items = ['apple', 25, 'banana', 100, 'orange', 50];

usort($items, function($a, $b) {
    $order = ['apple' => 1, 'banana' => 2, 'orange' => 3];
    
    if (is_numeric($a) && is_numeric($b)) {
        return $a - $b;
    } elseif (is_numeric($a)) {
        return 1;
    } elseif (is_numeric($b)) {
        return -1;
    } else {
        return $order[$a] - $order[$b];
    }
});

print_r($items);