Я использую preg_match_all для извлечения телефонных номеров из потока. Это помещает их в массив, применяя и rsort, и array_unique к переменной match, однако они не имеют никакого эффекта, как раньше ... Массив array_unique удаляет совпадения, которые возникают только из дубликата цитаты или ответа, и rsort должен сделать последний индекс первый, второй до последнего, второй и т. д.
preg_match_all('~0-9]{3}-[0-9]{3}-[0-9]{4}~', $data, $matches)
$result = array_unique($matches);
rsort($result);
var_dump($result);
Выход:
array
0 =>
array
0 => string '111-111-1111' (length=12)
1 => string '222-222-2222' (length=12)
2 => string '333-333-3333' (length=12)
3 => string '444-444-4444' (length=12)
4 => string '555-555-5555' (length=12)
5 => string '555-555-5555' (length=12)
6 => string '555-555-5555' (length=12)
Должно быть:
array
0 =>
array
0 => string '555-555-5555' (length=12)
1 => string '444-444-4444' (length=12)
2 => string '333-333-3333' (length=12)
3 => string '222-222-2222' (length=12)
4 => string '111-111-1111' (length=12)