Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как сделать разное время жизни сессии в laravel?

Лучший ответ:
Сделайте так, чтобы middleware, относящиеся к сессии не вызывались для маршрутов, которые вызываются внешними сервисами, сделать это можно, например, выделив сессионные middleware в отдельную группу  в app/Http/Kernel.php. Ну а лучше всего, чтобы они работали через группу api с токенами, а не с сессиями.

Худший ответ:
Время жизни сессии указано в конфиге ларавел. Значит вы можете управлять этим конфигом.
Вопрос: Как структурировать данные категорий при парсинге?

Лучший ответ:
Решение Неандертальца::

$arr = [
    '/category0/subcat1/subcat2',
    '/category0/subcat1/subcat4',
    '/category0/subcat5/subcat6',
    '/category2/subcat7/subcat8',
    '/category2/subcat9/subcat10',
    '/category2/subcat11/subcat12',
];

$t = [];
foreach ($arr as $item) {
    $s = explode('/', $item);
    $i = $s[1];
    unset ($s[1], $s[0]);
    if (!$t[$i] ){
        $t[$i] = [];
    }
    foreach ($s as $item){
        array_push ( $t[$i],$item);
    }
}
foreach ($t as &$item){
    $item = array_unique($item);
}
echo('<pre>');
var_dump($t);
var_dump(json_encode($t));
echo('<pre>');

Худший ответ:
$arr =  array(
    '/category0/subcat1/subcat2',
    '/category0/subcat1/subcat4',
    '/category0/subcat5/subcat6',
    '/category2/subcat7/subcat8',
    '/category2/subcat9/subcat10',
    '/category2/subcat11/subcat12'
);

foreach ($arr as $key => $value) {
preg_match_all('#/category(\d+)/subcat(\d+)/subcat(\d+)#', $value, $newmatch);
$cats[] = array('category' => $newmatch[1][0], 'subcat' => $newmatch[2][0],  'subcat_' => $newmatch[3][0]);
unset($newmatch);
}

print_r($cats);
Результат
Array
(
    [0] => Array
        (
            [category] => 0
            [subcat] => 1
            [subcat_] => 2
        )

    [1] => Array
        (
            [category] => 0
            [subcat] => 1
            [subcat_] => 4
        )

    [2] => Array
        (
            [category] => 0
            [subcat] => 5
            [subcat_] => 6
        )

    [3] => Array
        (
            [category] => 2
            [subcat] => 7
            [subcat_] => 8
        )

    [4] => Array
        (
            [category] => 2
            [subcat] => 9
            [subcat_] => 10
        )

    [5] => Array
        (
            [category] => 2
            [subcat] => 11
            [subcat_] => 12
        )

)
Вопрос: Как сравнить 2 многомерных массива и сохранить очередность?

Лучший ответ:
По коду вообще непонятно, что с чем сравнивается. Если массивы находятся в переменных $result_days и $result2, то выведется ячейка для каждой пары элементов (т.е. общее количество ячеек будет равно произведению размеров массивов). Вряд ли вы это задумывали.

По основному вопросу: искать что-то в многомерном массиве без индексов малоприятно. Сделайте ключи в массиве, с которым вы сравниваете, например:
$result_days = [
  "2019-04-27" => [ "id" => "123", ... ],
  ...
];

foreach ($result2 as $i2) {
                if (array_key_exists($i2['date'], $result_days) {
...

Худший ответ:
Соглашусь с оратором выше. Скорее всего вы перепутали массивы и не в там смотрите ключи. Перегоните массив в хэш-таблицы, типа так

$result2 = [
    '2020-04-01' => ['users_id' => 19],
    '2020-04-02' => ['users_id' => 133],
    ....
]


$result_days = [
    '2019-04-27' => [
        'id' => 1,
        'off_id' => 133,
    ],
    ....
]

А потом простым перебором проверяйте
foreach ($result2 as $day => $i2) {
    if (isset($result_days[$day])) {
        echo "<td class='vihodnoy'>" . $i2['date'] . "</td>";
    } else {
        echo "<td class='obichniyDen'>" . $i2['date'] . "</td>";
    }
}
Вопрос: В чём принцип работы STUN?

Лучший ответ:
STUN нужен, чтобы узнать свой внешний ip и, что важнее внешний порт ассоциированный с внутренним. Ещё STUN сервер нужен, чтобы выяснить тип NAT. Если у одного из Вас Symmetric, а у другого RestrictedCone или PortRestrictedCone, то можно забыть про P2P. Больше STUN не на что не годен. В случае VoIP, клиенты желающие соединиться  обмениваются через SIP адресами полученными через STUN и направляют на друг друга поток трафика. В случае restricted NAT передача должна начаться с обеих сторон иначе NAT принимающей стороны решит, что пакеты нужно отбросить. Teredo например начинает слать пакеты пустышки, получение которых символизирует, что соединение уже установлено. Вы можете написать собственный Teredo клиент по спецификации, она довольно простая.
STUN такой куций протокол потому, что он лишь дополнение для SIP. Но это не мешает использовать его для своих нужд.

Худший ответ:
tcp для p2p требует еще одного stun\turn\ice сервера для проведения хендшейка. иначе никак.

чтоб было чуть понятней в чем проблема - если второй клиент за натом, то внутри адрес у него какой-то 192.168.22.88, а наружу он идет через нат с ипшником 172.22.20.20. проблема в том, что за этим натом может быть еще несколько сотень других компов, каждый с которых (снаружи) виден под этим ипшником. Именно по этой причине попытке законнектится к ипшнику вашего друга заканчивается провалом. нат просто не понимает что с этим запросом делать, потому отбрасывает его.
Вопрос: Как сделать подобную кнопку?

Лучший ответ:
<select>
  <option>День</option>
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
  <option>5</option>
</select>

Худший ответ:
Можно использовать bootstrap
Вопрос: Прошу, можете объяснить суть паттерна JavaScript?

Лучший ответ:
в итоге это просто объект, в котором куча свойств в виде функций, имеющих доступ к приватным функциям?
да, так и есть. В этом суть. А вы хотели дракона получить/приручить? :)

Худший ответ:
в итоге это просто объект, в котором куча свойств в виде функций, имеющих доступ к приватным функциям?
да, так и есть. В этом суть. А вы хотели дракона получить/приручить? :)
Вопрос: Когда стоит думать о поиске работы школьнику?

Лучший ответ:
Когда стоит думать о поиске работы школьнику?
Когда за коммуналку будет нечем платить, а пока ищи новые направления и развивай скиллы. На html много не заработаешь.

Худший ответ:
чего ждать? без практической работы любые знания в одно ухо влетают...
Вопрос: Из-за чего пропадает Интернет ночью?

Лучший ответ:
Поставьте программу типа PingPlotter (платно или торренты). Включите её, чтобы работала 24/7 на пинг серверов в Интернете, вашего сервера, роутера, прочих устройств.Постфактум смотрите, что было, какие детали, и что происходило в реале в это же время. Даже если не будет четких закономерностей, это исключит многие догадки и позволит копать дальше.spoilerУ меня эта прога так и работает. И обычно она не нужна. Но если вдруг нужна, то надо узнать причину проблемы, которая была 5 минут назад или вчера и т.д., так что нужна статистика.
По сути это обычный трейс в ретроспективе, только красивый.

Худший ответ:
посмотрите логи роутера если есть на предмет пропадания-появления сигнала для начала. А вообще ничего не мешает параллельно с вопросами на тостере в техподдержку провайдера позвонить.
Вопрос: Как на сервере centos 7 обновить libxml2?

Лучший ответ:
это пакет исходных кодов (судя по метке src в названии).
надо распаковать на целевой платформе (судя по расширению rpm - проинсталить через yum install ) и скомпилировать библиотеку.
на сайте, да и внутри архива, по идее, должно быть описание как компилировать сей бинарник. читай-изучай.
а есть ли смысл в версии 2.9.9 ?? или это погоня за циферками.

Худший ответ:
Здравствуйте! Пожалуйста, оставьте заявку в службу поддержки: https://goo.gl/Yzi6kH. Наши специалисты обязательно вам помогут.
Вопрос: Сколько зарабатывает сайт на гугл рекламе?

Лучший ответ:
3 года назад сделал сайт про животных. По сути - статьи и описание пород. Народ стал заходить где-то через полгода, но поначалу крайне мало из-за того, что я не знал, как правильно заголовки делать и т.п., ибо разраб, а не сеошник. Сейчас посещаемость чуть больше 200 уников в сутки (статей у меня штук 150, пород в районе сотни), есть Адсенс, но за рекламу капают гроши (например, за сегодня я заработал 5 центов). Тем более что у Адсенса порог снятия суммы со счета идет от 100 долларов. Это еще копить и копить.
Короче, делать статейник, на мой взгляд, беспонтовая затея, по крайней мере, сейчас. Выхлоп с этого копеечный, а статьи писать вскоре при любом раскладе надоест. Если их закупать, то в перспективе это все равно не скоро окупится. Тем более если закупать статьи по десятку в день - выйдет достаточно затратно. Зато я с этого сайта получил знания (Django и React, с использованием которых он сделан), которые мне принесли и приносят деньги на фриланс-проектах, что тоже неплохо. Сайт я в итоге закрывать не планирую, дорабатываю его по чуть-чуть (мне это интересно просто) - может быть, в дальнейшем к чему-то и приду, потому что посещаемость растет, хоть и медленно. Но доход именно с рекламы Адсенс - копейки (даже если посещаемость вырастет раз в 5), не думаю, что стоит на это вообще ориентироваться.

Худший ответ:
3-6 мес
$0.4-4 CPM
Вопрос: Как написать bash-скрипт выполняющий перенос из папки 1 в папку 2 всех файлов на сервере 1 раз в 30 мин с описанием в лог файле результ своей работы?

Лучший ответ:
Ручками, берёшь и пишешь.
Тут прям на хабре статья есть про скрипт бэкапа с логом https://habr.com/ru/post/136313/

Худший ответ:
Пишете скрипт, который выполняет функцию переноса, с описанием в лог файл
настраиваете в cron запуск вашего скрипта раз в 30 минут
Вопрос: Как сделать чтоб php скрипт сам выполнялся?

Лучший ответ:
1)  Взять хостинг с кроном
2) Есть сервисы раз в какое-то время заходящие по определнному адресу, такой себе внешний крон, например такой
3) Использовать заходы пользователей как триггер запуска определенных скриптов, тут конечно о точности исполнения речи нет.

Худший ответ:
Запусти через php-cli или shell_exec() В конце shell команды амперсанд & Это фоновое выполнение bash скриптов.
Пока руки до очередей не дошли, я у себя так запускал длительные процессы.
Вопрос: Где скачать калькулятор стоимости сайта?

Лучший ответ:
набери в гугле
"скачать калькулятор стоимости сайта онлайн без регистрации"
а если серьезно, то для таких целей есть специальные сервисы типа be1.ru/site-cost/ и не нужно скачивать что-то, более того, если вы найдете где скачать такой калькулятор, то это мошенники

Худший ответ:
Все эти калькуляторы по сути
четыре колонки в экселе
a - пафосное название
b - цена за это по вашему мнению
с  - кол-во
d - формула  =c1*b1
где-то   внизу
Итого формула в ячейке dn сумма ячеек выше в колонке.
По вкусу можно считать в часах и умножать на почасовую ставку .
Вопрос: Как убрать GET из URL?

Лучший ответ:
сайт.ру/q?example=1 было сайт.ру/q/example/1
RewriteCond %{QUERY_STRING} (?:^|&)(example)=(1)(?:$|&)
RewriteRule ^q$ https://site.ru/q/%1/%2? [R=301,L]
Ставить в начало файла.

Худший ответ:
RewriteCond %{QUERY_STRING} (^|&)(.+)\=([0-9]{1,})($|&)
RewriteRule ^q$ /%2/%3? [L,R=301]

где  (^|&)....($|&)  - не важная штука
(.+) - любое  больше чем 1 буква или цифра 
([0-9]{1,})- любые цифры  но не менее 1.
^q$ - то что было в урле  до GET
%2  - вторая группа из RewriteCond - аналог $2 из RewriteRule 
? - удалить гет параметры.
Вопрос: Кто придумал эту блажь с «mobile first»?

Лучший ответ:
Ты хочешь как проще тебе, а заказчик хочет как лучше для пользователя.
(Потому что от комфорта пользователей зависит и гугловый рейтинг и процент возврата посетителей, а значит и прибыль).
Делай как надо, или не берись за такую "сложную" работу.

Худший ответ:
Если блажь, то по логике придумал блаженный)))
Вопрос: Возможно ли применение корпоративной лицензии Windows на домашнем компьютере?

Лучший ответ:
Ни один лицензированный поставщик не продаст вам корпоративный ключ, потому что для этого надо заключить соглашение от имени юрлица. Вас банально надурили.

А так вообще чисто к сведению - некоторые корпоративные лицензии разрешают использовать ос сотрудникам предприятия даже на домашних пк. Но сотрудникам, а не левым чувакам

Худший ответ:
Если у вас есть документ, что деньги заплачены за лицензию на право использовать Windows правомочному представителю Microsoft, то да.
Набор цифр и букв, который позволяет активировать Windows без лицензии (если это специально не оговорено Microsoft)— воровство (пиратство).
Вопрос: Любой ли монитор можно откалибровать/отпрофилировать на качественную цветопередачу?

Лучший ответ:
Калибровать можно любой монитор, но для многих мониторов это просто бессмысленно из-за их конструкции и назначения. Монитор с 18-битной "офисной" матрицей, например, просто неспособен отобразить 24-битный цвет.

Худший ответ:
По хорошему откалибровать можно один раз, только если вы работает в подвале без окон и у вас одинаковая освещенность и свет всё время. Всё остальное нужно калибровать в зависимости от времени суток, времени года, облачности. В целом конечно можно откалибровать но в пределах небольшого диапазона, потому что как только вы начинаете улучшать один параметр - у вас начинает ухудшаться 10 других параметров, поэтому калибруют очень рядом со стандартными настройками, ну или если вам не важны остальные параметры, то делают идеальным только один (например откалибруют тебе точку белого идеально, а оттенки серого улетят в трубу).
Вопрос: Как из функции передать переменную в функцию?

Лучший ответ:
Предполагается, что функция func1 всегда принимает в качестве аргумента именно функцию, иначе будет брошено исключение.
function func1(func) {
  let value = 'val';
  func(value);
}

function func2(v) {
  alert(v);
}

func1(func2);

Худший ответ:
Не страдать фигней и подойти к этому так.
Вопрос: Сортировка по повторным ячейкам в Excel?

Лучший ответ:
Сделайте сводную таблицу по номеру телефона и количеству повторений. В ней уже может делать сортировку.

Худший ответ:
Если сортировка нужна в самом исходном документе и ответ Константина лично Вам не подходит: можете сделать вспомогательный столбец, в котором функцией COUNTIFS / СЧЁТЕСЛИМН можно подсчитать сколько раз номер из текущей строки встречается в столбце. И уже по этому вспомогательному столбцу можно сделать сортировку по убыванию.
Вопрос: Как переводить сайт на разные языки?

Лучший ответ:
Мемы про название товаров на алиэкспрессе алиэкспрессе слышали?
Я бы переводил, храня в базе, при запросе страницы без перевода - переводил бы через гугл транслейт, сохранял бы в базу и отправлял на рецензирование.
Ручной перевод/правка автопереводов - в порядке количества запросов страниц. Ну и KPI по объему переводов для исполнителей.

msdn вообще выводит плашку про автоматизированный перевод + возможность посмотреть оригинал каждого блока и предложить лучший вариант перевода. Но не у всех статей, что говорит что некоторые статьи таки перевели руками.

Худший ответ:
Мне говорят, что больше сайты, где много информации, руками не переводят. А используют автоматический перевод.
Кто-то сталкивался с крупными системами? Чтобы конкретно своими глазами видел как переводит амазон, розетка и т.п.?
Вопрос: Почему отличается результат кодирования в base64 в windows и Linux?

Лучший ответ:
Алгоритм base64 един и однозначен.
Если строки различаются, значит на вход поступают разные строки. Скорее всего, дело именно в кодировке. Проверяйте входные строки

Худший ответ:
направьте вывод в обоих случаях в файлы и сравните эти файлы (посмотрите в шестнадцатиричном просмотрщике), делов то.
либо кодировка разная, либо кто-то (винда, полагаю) BOM в начале строки ставит, либо перенос строки присутствует (он разный в разных ОС).
Вопрос: Как пройти тернистый путь кодера за 3 месяца?

Лучший ответ:
Есть подходящие статьи?
Сходу ошибка. Если и есть способ, то это задрачивать учебники и практику. Если есть дар и воля, то есть шанс. Но лично у меня ушло в три раза больше времени.

Худший ответ:
Смотрите фильм Обратно в школу. У Меллона старшего получилось
Вопрос: Знает ли кто-то что-то о CMS BioEngine и как вы убеждаете клиента сменить CMS?

Лучший ответ:
Скорее всего, хрень, возможно, от предыдущих разработчиков. На моей первой работе все сайты делались на самописной CMS. Потом уже, после увольнения, через пару годков стало интересно, что у них там - и лучше бы не открывал, такое уг...
А аргументировать просто: рублем. Скажите, что пока вы будете разбираться в этом уг, могли бы выполнить все задачи клиента на том же WP, и в дальнейшем эта разница будет только больше. Затраты на поиск и смену специалистов у клиента тоже будут расти, поэтому сменить CMS сейчас, пока тех. долг сравнительно невелик, разумный выбор.

Худший ответ:
Никак не убеждаю, потому что клиента не волнует какая cms , ему важно чтобы была удобная админка и возможность добавлять то что ему нужно, а что там внутри, Битрикс или вордпресс, неважно.
Вопрос: Как отсортировать объекты в массиве?

Лучший ответ:
Отсортирует по алфавиту по полю (по полюшку) title, с особым случаем: «Другое» – в конец:arr.sort((a, b) => {
  const keyword = 'Другое';
  if (a.title === b.title) return 0;
  if (a.title === keyword) return 1;
  if (b.title === keyword) return -1;
  return a.title > b.title ? 1 : -1;
})
тестconst arr = [
  {id: 1, title: "Другое"},
  {id: 2, title: 'Товары'},
  {id: 2, title: 'Услуги'},
  {id: 3, title: 'Услуги'},
  {id: 4, title: 'Товары'},
  {id: 5, title: 'Анекдоты'},
  {id: 6, title: 'Тамада, тосты, сверлю бетон'},
];

// ​[
//   { id: 5, title: "Анекдоты" }
//   { id: 6, title: "Тамада, тосты, сверлю бетон" }
//   { id: 2, title: "Товары" }
//   { id: 4, title: "Товары" }
//   { id: 2, title: "Услуги" }
//   { id: 3, title: "Услуги" }
//   { id: 1, title: "Другое" }
// ​]

Худший ответ:
[
  {id: 1, title: "Другое"},
  {id: 2, title: 'Товары'},
  {id: 2, title: 'Услуги'}
].sort((a, b) => b.title.charCodeAt(0) - a.title.charCodeAt(0))
Вопрос: На чем зарабатывают фриланс сайты?

Лучший ответ:
Вы имеете в виду Upwork, FL и т.п.?
Вы их комиссии видели?
Они берут процент со всех денег, которые проходят через них. Также продают всякие платные аккаунты, возможность подавать заявки и т.д. Там вообще сложно что-то сделать бесплатно.

Худший ответ:
в основном на комиссии
Вопрос: Как изучать эффективнее, используя электронную книгу?

Лучший ответ:
Решать больше примеров, использовать интервальные повторения. Мозг запоминает то, что регулярно требуется.

Худший ответ:
Я изучаю математику по элект, книги используя телефон, как улучшить эффективность и запоминаемость информации? 
Так математику не изучают.

Как правильно: берется бумажная книга, стопка бумаги, карандаш или ручка - за стол, читать, проверять неочевидные переходы своими выкладками, решать задачи.
Вопрос: Куда можно слить лиц, продающих пиратский контент?

Лучший ответ:
Для начала в ВК и жалуйтесь. Потом - в Прокуратуру.

Худший ответ:
Презумпция добросовестности Пользователей
Администрация Сайта уважает своих Пользователей и исходит из того, что Пользователи Сайта соблюдают требования применимого законодательства и Правил пользования Сайтом и добросовестно используют возможности и ресурсы Сайта.
...
2.1. Любой правообладатель объектов авторских или смежных прав (далее – Заявитель) в случае обнаружения на Сайте Контента, размещенного Пользователями без его разрешения или иного законного основания, вправе обратиться к Администрации Сайта с заявлением о нарушении его авторских и (или) смежных прав на Контент. 

2.2. Для обращения к Администрации Сайта Заявитель использует имеющийся собственный зарегистрированный аккаунт на Сайте или проходит процедуру регистрации аккаунта. Регистрация на Сайте необходима для обеспечения оперативности взаимодействия с Администрацией Сайта и прозрачности процедуры рассмотрения заявления с использованием удобного интерфейса для доступа к информации по заявлению. Зарегистрированный на Сайте Заявитель заполняет веб-форму по адресу: vk.com/dmca.
Обращение указанным способом к Администрации Сайта считается обращением в электронной форме для целей соблюдения требований ст. 15.7 Федерального закона «Об информации, информационных технологиях и о защите информации». При этом Правообладатель вправе отказаться от предлагаемой эффективной формы взаимодействия и направить уведомление на юридический адрес ВКонтакте или по электронной почте. (https://vk.com/pages?oid=-1&p=Contacts)

https://vk.com/help?page=cc_terms
Вопрос: Правильная и структурированная информация по деплою проектов на wp с локали на хостинг?

Лучший ответ:
Я с деплоем WP замучался. т.к. слишком много настроек хранится в БД. А их через гит не прогонишь.  А если еще и необходимость домен поменять - это полный ппц (если кто работал с Monstroid, то понимает о чем я).  Посмотрите в сторону других CMS. К примеру на Drupal 8 все настройки (все без исключения). можно переносить с помощью config файлов (YML) через гит. При желании можно поставить пару контриб модулей, после чего и структуру и контент так же можно через config файлы переносить (но это необходимо в частных случаях).

Худший ответ:
Основной  shit-метод у вас - это сам WP.
Оценить качество применяемого вами метода легко. Как и сравнить их. Замерьте время, количество действий и риски.
Применение системы контроля версий  - хорошее решение. Только на продакшене не редактируют. Таким образом происходит однонаправленное перемещение кода.
Вопрос: Нужно ли полностью разряжать аирподс для раскачки батарейки?

Лучший ответ:
Раскачка батареи - миф.

Худший ответ:
Просто пользуйтесь, через 2 года все равно любые наушники беспроводные умирают. 
Учитывая что стоимость эирподсов около 12 тыс, то на 2 года это 16 рублей в день стоимость эксплуатации.
Вопрос: В чем разница int, long и float, double?

Лучший ответ:
int — диапазон допустимых значений от -2147483648 до 2147483647
long — диапазон допустимых значений от -9223372036854775808 до 9223372036854775807
float — диапазон допустимых значений от ~1,4*10-45 до ~3,4*1038
double — диапазон допустимых значений от ~4,9*10-324  до ~1,8*10308
Double более точный чем float

Худший ответ:
Тут все описано, если не понимаете английский в гугл хроме щелкните кнопку перевести
https://docs.oracle.com/javase/tutorial/java/nutsa...
Вопрос: Есть смысл тратить время на JS если в планах frontend (webassembly и другие техн)?

Лучший ответ:
Насколько долго протянет JS если в wasm добавят dom? Что планируется или js вечен?
Как только добавят - весь мир массово на него перейдёт. Мгновенно уволят всех JS-программистов, поддержка JS во всех браузерах будет отключена в течение первых трёх часов после включения DOM в WASM. Вы разве не знали? JS-то всё.

Худший ответ:
Если собираетесь работать с frontend, JS в любом случае придется знать и знать хорошо.
Даже если языку столь популярному и найдется общепризнанная замена, то до того, как все технологии и компании массово перестанут использовать и поддерживать этот язык, пройдет еще очень немало времени.

Поверьте, устроившись frontend-developer`ом, вы столкнетесь с JS и через год и через два и через три.
Так что смело учите, это время будет не "потрачено", а вложено с пользой.
Вопрос: Как начинающему frontend разработчику найти коммерческий опыт?

Лучший ответ:
Устроиться сложно, но если есть проекты то реально. Самое главное это качать скиллы. Каждый день развиваться. Ходить на собесы, брать тестовые. Так день за днем набивается рука. Учишь теорию, решаешь задачки, верстаешь, читаешь книги, смотришь туториалы. И так по кругу пока не устроился, а там все так же по кругу только еще могут помочь коллеги. Так же было бы здорово выучить хорошо реакт, и запилить годный проект на нем, с хорошей версткой и адаптивом. Как пример можно сайт додопиццы, я всем новеньким на работе его советую сделать кто только начинает реакт учить

Худший ответ:
Поиск в гугле по запросу treene fron-end CityName 
1. Этот вопрос задается исключительно в зеркало
1.1 упорство-и-труд(тм). Или же по принципу fake it make you till it

2. На работу берут за голову и скилы
Вопрос: Существует ли полностью виртуальный телефон?

Лучший ответ:
Android эмулятор

Худший ответ:
Попробуйте один из этих сервисов
https://www.geckoandfly.com/23281/virtual-phone-nu...
06 – Cloud SIM 
По идее это то что вам нужно.
И поделитесь впечатлениями. 
Есть правда еще SIM-BANK но они больше для телефонии, я думал что можно прокинуть симку с них в эмулятор, но нет