Я знаю, что могу сделать это легко, сначала преобразовав IP-адреса в десятичную запись, используя встроенные в PHP функции, такие как up2long
и long2ip
. Я просто хочу сделать то же самое, используя стандартную нотацию IP-адреса в качестве упражнения.
Проблема, о которой я думаю, выглядит так: задан начальный IP-адрес, скажем, 192.168.1.100, и конечный IP-адрес, скажем, 201.130.22.10. Создайте программу, которая печатает все номера адресов в этом диапазоне (192.168.1.100, 192.168.1.101, …, 201.130.22.9, 201.130.22.10).
Я подумал, что, возможно, выход будет заключаться в создании вложенного цикла for
внутри условия while
до тех пор, пока первый октет начального адреса не совпадет с первым октетом конечного адреса. Затем выполните тот же блок кода для второго октета и так далее, пока программа не достигнет конечного адреса и не завершится.
Я только недавно начал учиться программировать, поэтому вполне возможно, что мое мышление и/или написание кода далеки от элегантности. Если бы вы хотели этого, как бы вы это сделали?