<?php
//создаём массив для номеров
//создаём массив для кодов операторов
39,
50,
63,
66,
67,
68,
91,
92,
93,
94,
95,
96,
97,
98,
99
);
for ($i = 0; $i < 30; $i++) {
$randomCode = $operatorCodes[$randomCodeOfArray]; //генерирует код оператора
$randomNumbers = mt_rand(0000001, 9999999); //генерирует номер абонента $numbers[$i] = "38 0$randomCode $randomNumbers\n"; //собирает номер
}
//проверяем корректность номеров, и сортируем их в соответствующие массивы
$correctNumbers = array(); $incorrectNumbers = array();
$regexp = '/^38\\s0([0-9]{2})\\s([0-9]{7})$/';
$k1 = 0; //счётчики для массивов корректности
$k2 = 0;
for ($i = 0; $i < count($numbers); $i++) {
//выводим на экран хорошее число и записываем в массив для корректных
//echo "$numbers[$i] -- ✓\n";
$correctNumbers[$k1] = $numbers[$i];
$k1++;
} else {
//выводим на экран плохое число, ошибку, и записываем в массив для некорректных
//echo "$numbers[$i] ----------- WARNING, номер указан в неверном формате\n";
$incorrectNumbers[$k2] = $numbers[$i];
$k2++;
}
}
echo "Корректные номера: \n\n\n";
for ($i = 0; $i < count($correctNumbers); $i++) { echo "$correctNumbers[$i] \n";
}
echo "\n\n\n Некорректные номера: \n\n\n";
for ($i = 0; $i < count($incorrectNumbers); $i++) { echo "$incorrectNumbers[$i] \n";
}
PD9waHAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKCi8v0YHQvtC30LTQsNGR0Lwg0LzQsNGB0YHQuNCyINC00LvRjyDQvdC+0LzQtdGA0L7QsgokbnVtYmVycyAgICAgICA9IGFycmF5KCk7Ci8v0YHQvtC30LTQsNGR0Lwg0LzQsNGB0YHQuNCyINC00LvRjyDQutC+0LTQvtCyINC+0L/QtdGA0LDRgtC+0YDQvtCyCiRvcGVyYXRvckNvZGVzID0gYXJyYXkoCiAgICAzOSwKICAgIDUwLAogICAgNjMsCiAgICA2NiwKICAgIDY3LAogICAgNjgsCiAgICA5MSwKICAgIDkyLAogICAgOTMsCiAgICA5NCwKICAgIDk1LAogICAgOTYsCiAgICA5NywKICAgIDk4LAogICAgOTkKKTsKCmZvciAoJGkgPSAwOyAkaSA8IDMwOyAkaSsrKSB7CiAgICAkcmFuZG9tQ29kZU9mQXJyYXkgPSBhcnJheV9yYW5kKCRvcGVyYXRvckNvZGVzKTsKICAgICRyYW5kb21Db2RlICAgICAgICA9ICRvcGVyYXRvckNvZGVzWyRyYW5kb21Db2RlT2ZBcnJheV07IC8v0LPQtdC90LXRgNC40YDRg9C10YIg0LrQvtC0INC+0L/QtdGA0LDRgtC+0YDQsAogICAgJHJhbmRvbU51bWJlcnMgICAgID0gbXRfcmFuZCgwMDAwMDAxLCA5OTk5OTk5KTsgLy/Qs9C10L3QtdGA0LjRgNGD0LXRgiDQvdC+0LzQtdGAINCw0LHQvtC90LXQvdGC0LAKICAgICRudW1iZXJzWyRpXSAgICAgICA9ICIzOCAwJHJhbmRvbUNvZGUgJHJhbmRvbU51bWJlcnNcbiI7IC8v0YHQvtCx0LjRgNCw0LXRgiDQvdC+0LzQtdGACiAgICAKfQoKLy/Qv9GA0L7QstC10YDRj9C10Lwg0LrQvtGA0YDQtdC60YLQvdC+0YHRgtGMINC90L7QvNC10YDQvtCyLCDQuCDRgdC+0YDRgtC40YDRg9C10Lwg0LjRhSDQsiDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40LUg0LzQsNGB0YHQuNCy0YsKJGNvcnJlY3ROdW1iZXJzICAgPSBhcnJheSgpOwokaW5jb3JyZWN0TnVtYmVycyA9IGFycmF5KCk7CgokcmVnZXhwID0gJy9eMzhcXHMwKFswLTldezJ9KVxccyhbMC05XXs3fSkkLyc7CgokazEgPSAwOyAvL9GB0YfRkdGC0YfQuNC60Lgg0LTQu9GPINC80LDRgdGB0LjQstC+0LIg0LrQvtGA0YDQtdC60YLQvdC+0YHRgtC4CiRrMiA9IDA7CmZvciAoJGkgPSAwOyAkaSA8IGNvdW50KCRudW1iZXJzKTsgJGkrKykgewogICAgCiAgICBpZiAocHJlZ19tYXRjaCgkcmVnZXhwLCAkbnVtYmVyc1skaV0pKSB7CiAgICAgICAgLy/QstGL0LLQvtC00LjQvCDQvdCwINGN0LrRgNCw0L0g0YXQvtGA0L7RiNC10LUg0YfQuNGB0LvQviDQuCDQt9Cw0L/QuNGB0YvQstCw0LXQvCDQsiDQvNCw0YHRgdC40LIg0LTQu9GPINC60L7RgNGA0LXQutGC0L3Ri9GFCiAgICAgICAgLy9lY2hvICIkbnVtYmVyc1skaV0gLS0g4pyTXG4iOwogICAgICAgICRjb3JyZWN0TnVtYmVyc1skazFdID0gJG51bWJlcnNbJGldOwogICAgICAgICRrMSsrOwogICAgfSBlbHNlIHsKICAgICAgICAvL9Cy0YvQstC+0LTQuNC8INC90LAg0Y3QutGA0LDQvSDQv9C70L7RhdC+0LUg0YfQuNGB0LvQviwg0L7RiNC40LHQutGDLCDQuCDQt9Cw0L/QuNGB0YvQstCw0LXQvCDQsiDQvNCw0YHRgdC40LIg0LTQu9GPINC90LXQutC+0YDRgNC10LrRgtC90YvRhQogICAgICAgIC8vZWNobyAiJG51bWJlcnNbJGldIC0tLS0tLS0tLS0tIFdBUk5JTkcsINC90L7QvNC10YAg0YPQutCw0LfQsNC9INCyINC90LXQstC10YDQvdC+0Lwg0YTQvtGA0LzQsNGC0LVcbiI7CiAgICAgICAgJGluY29ycmVjdE51bWJlcnNbJGsyXSA9ICRudW1iZXJzWyRpXTsKICAgICAgICAkazIrKzsKICAgIH0KICAgIAp9CgplY2hvICLQmtC+0YDRgNC10LrRgtC90YvQtSDQvdC+0LzQtdGA0LA6ICAgXG5cblxuIjsKZm9yICgkaSA9IDA7ICRpIDwgY291bnQoJGNvcnJlY3ROdW1iZXJzKTsgJGkrKykgewogICAgZWNobyAiJGNvcnJlY3ROdW1iZXJzWyRpXSBcbiI7Cn0KCmVjaG8gIlxuXG5cbiAg0J3QtdC60L7RgNGA0LXQutGC0L3Ri9C1INC90L7QvNC10YDQsDogIFxuXG5cbiI7CmZvciAoJGkgPSAwOyAkaSA8IGNvdW50KCRpbmNvcnJlY3ROdW1iZXJzKTsgJGkrKykgewogICAgZWNobyAiJGluY29ycmVjdE51bWJlcnNbJGldIFxuIjsKfQ==