PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: нет
савелей
Отправлено: 13 Апреля, 2018 - 07:10:58
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Апр. 2018  


Помог: 0 раз(а)




Привет всем,
у меня просьба, помогите отсортировать IP диапазоны,
нужно из списка вида:

44.202.254.0
44.202.254.0
44.202.255.0
22.160.84.0
22.160.85.0
22.160.86.0
22.160.86.0
22.160.87.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.97.0
22.160.98.0
22.160.98.0
22.160.99.0
22.160.117.0
22.160.118.0
22.160.118.0
22.160.119.0
22.160.120.0
22.160.120.0
22.160.120.0
22.160.120.0
22.160.121.0
22.160.122.0
22.160.122.0
22.160.123.0
22.160.124.0
22.160.124.0
22.160.124.0
22.160.125.0
22.160.126.0
22.160.126.0
22.160.127.0
9.204.196.0
9.204.196.0
9.204.196.0
9.204.197.0
9.204.198.0
9.204.198.0
9.204.199.0
9.246.128.0
9.246.128.0
9.246.128.0
9.246.130.0
9.246.132.0
9.246.134.0
9.246.136.0
9.246.136.0
9.246.138.0
9.246.140.0
9.246.142.0
9.246.144.0
9.246.144.0
9.246.146.0
9.246.148.0
9.246.150.0
9.246.152.0
9.246.152.0
9.246.154.0
9.246.156.0
9.246.158.0
9.250.51.0
9.250.52.0
9.250.52.0
9.250.52.0
9.250.53.0
9.250.54.0
9.250.54.0
9.250.55.0
9.250.56.0
9.250.56.0
9.250.56.0
9.250.56.0
9.250.57.0
9.250.58.0
9.250.58.0
9.250.59.0
9.250.60.0​

получить список:

44.202.254.0
44.202.255.0

22.160.84.0
22.160.87.0

22.160.96.0
22.160.99.0

22.160.117.0
22.160.127.0

9.204.196.0
9.204.199.0

9.246.128.0
9.246.158.0​

прошу помогите, буду благодарен любой информации..
 
 Top
Vladimir Kheifets
Отправлено: 13 Апреля, 2018 - 08:25:27
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 5 раз(а)




савелей пишет:
Привет всем,
у меня просьба, помогите отсортировать IP диапазоны,
нужно из списка вида:
44.202.254.0
44.202.254.0
44.202.255.0
.................
получить список:
44.202.254.0
44.202.255.0
.....................
прошу помогите, буду благодарен любой информации..

Привет!
Как я понял Вам нужно Выбрать из списка уникальные адреса.
Можно сделать так:
PHP:
скопировать код в буфер обмена
  1. $ip=['44.202.254.0',
  2. '44.202.254.0',
  3. '44.202.255.0',
  4. '22.160.84.0',
  5. '22.160.85.0',
  6. '22.160.86.0',
  7. '22.160.86.0',
  8. '22.160.87.0'];
  9.  
  10. $res= array_unique ( $ip ,  SORT_STRING  );
  11. foreach($res as $v) echo "$v<br>";
  12.  
  13. /*
  14. Результат:
  15. 44.202.254.0
  16. 44.202.255.0
  17. 22.160.84.0
  18. 22.160.85.0
  19. 22.160.86.0
  20. 22.160.87.0
  21. */

Удачи!

(Отредактировано автором: 13 Апреля, 2018 - 08:26:07)

 
 Top
савелей
Отправлено: 13 Апреля, 2018 - 08:54:10
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Апр. 2018  


Помог: 0 раз(а)




Vladimir Kheifets пишет:
савелей пишет:
Привет всем,
у меня просьба, помогите отсортировать IP диапазоны,
нужно из списка вида:
44.202.254.0
44.202.254.0
44.202.255.0
.................
получить список:
44.202.254.0
44.202.255.0
.....................
прошу помогите, буду благодарен любой информации..

Привет!
Как я понял Вам нужно Выбрать из списка уникальные адреса.
Можно сделать так:
PHP:
скопировать код в буфер обмена
  1. $ip=['44.202.254.0',
  2. '44.202.254.0',
  3. '44.202.255.0',
  4. '22.160.84.0',
  5. '22.160.85.0',
  6. '22.160.86.0',
  7. '22.160.86.0',
  8. '22.160.87.0'];
  9.  
  10. $res= array_unique ( $ip ,  SORT_STRING  );
  11. foreach($res as $v) echo "$v<br>";
  12.  
  13. /*
  14. Результат:
  15. 44.202.254.0
  16. 44.202.255.0
  17. 22.160.84.0
  18. 22.160.85.0
  19. 22.160.86.0
  20. 22.160.87.0
  21. */

Удачи!



нет, немного не так, нужно именно получить уникальные плюс к этому выбрать первый и последний...

то есть было:

22.160.84.0
22.160.85.0
22.160.86.0
22.160.86.0
22.160.87.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.96.0
22.160.97.0
22.160.98.0
22.160.98.0
22.160.99.0
22.160.117.0
22.160.118.0
22.160.118.0
22.160.119.0
22.160.120.0
22.160.120.0
22.160.120.0
22.160.120.0
22.160.121.0
22.160.122.0
22.160.122.0
22.160.123.0
22.160.124.0
22.160.124.0
22.160.124.0
22.160.125.0
22.160.126.0
22.160.126.0
22.160.127.0

получить только 6 адресов, начало, конец...

22.160.84.0
22.160.87.0

22.160.96.0
22.160.99.0

22.160.117.0
22.160.127.0

получить уникальные проблем нет, но все равно спасибо.
Может еще кто поможет...

(Отредактировано автором: 13 Апреля, 2018 - 08:56:25)

 
 Top
armancho7777777 Супермодератор
Отправлено: 13 Апреля, 2018 - 08:58:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 4658
Дата рег-ции: Февр. 2011  
Откуда: Иркутск, Россия


Помог: 214 раз(а)




Function ipGroupByRange (Отобразить)


Result (Отобразить)


?
(Добавление)
савелей пишет:
22.160.96.0
22.160.99.0

22.160.117.0
22.160.127.0

Почему диапазон не 22.160.96.0 - 22.160.127.0 ?


-----
Болтовня ничего не стоит. Покажите мне код.
-Linus Torvalds
 
 Top
савелей
Отправлено: 13 Апреля, 2018 - 09:14:20
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Апр. 2018  


Помог: 0 раз(а)




armancho7777777 пишет:
Почему диапазон не 22.160.96.0 - 22.160.127.0 ?


Потому что далее будет запись в файл, не нужны лишние.
Огромное тебе спасибо, ты меня сильно выручил

(Отредактировано автором: 14 Апреля, 2018 - 00:32:32)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB