Задать вопрос
  • Хранение цены в копейках (int). Как корректно выводить?

    KorsaR-ZN
    @KorsaR-ZN
    Другого решения наверное и не будет, Ваше хорошее. Разве еще что-то нужно?)
    Только $result =, там все же лишнее :)
    Ответ написан
    1 комментарий
  • Поддерживает ли PHP асинхронность на уровне ядра языка программрования?

    @rPman
    из коробки в php есть асинхронные методы работы с сокетами, метод socket_select позволяет создать event loop и вести асинхронную коммуникацию

    так же библиотека curl позволяет вести загрузку в фоновом режиме с помощью curl_multi_...

    используя штатные механизмы языка созданы библиотеки по типу ReactPHP с помощью которых можно создавать событийно-ориентированные приложения, например асинхронный websocket и http сервер в одном приложении. Если сравнивать с nodejs, где асинхронность 'из каропки' то реализация на php чуть медленнее но так каксам язык в большинстве случаев работает быстрее, в некоторых случаях код будет работать быстрее (например я писал простейший веб сервис, работающий со сжатыми gzip файлами 'построчно', так вот на nodejs было сильно медленнее, но сам event loop там быстрее)

    p.s. чтобы nodejs по скорости был сравним с php приходится осторожно выбирать какими методами пользоваться, например штатные объекты и массивы там медленнее чем класс Map
    Ответ написан
    3 комментария
  • Что такое «.js@crc=6»?

    SagePtr
    @SagePtr
    Еда - это святое
    Скорее всего, изначально URL файла выглядел наподобие https://домен/папка/файл.js?crc=6, где ?crc=6 использовалось для обозначения версии этого файла на случай, если в кэше браузера могла находиться какая-либо из предыдущих его редакций, предположительно их было пять (при каждом изменении файла - в URL также менялся этот номер, чтобы браузер считал файл другим и не брал из кэша старый). Но потом этот файл был сохранён на диск на стороне клиента, а в файловой системе вопросительный знак недопустим, потому этот символ был заменён на символ @. Так и получилось такое странное расширение файла. Почем именно crc - скорее всего, просто неудачно выбранное название параметра, который в принципе может называться как угодно или вообще не иметь названия, лишь бы символы после ? различались от версии к версии, если выбран именно такой способ обхода кэша.
    Ответ написан
    2 комментария
  • Почему появляется ошибка An error occurred в Nginx?

    goodwin74
    @goodwin74 Автор вопроса
    В итоге методом проб и ошибок, обнаружил что после после увеличения worker_connections до 2000 и установкой worker_processes в значение 2, ошибки пропали и до сих пор не появлялись. Решил отписаться, дабы возможно инфа кому то будет нужна в случае аналогичной проблемы.
    Ответ написан
    Комментировать
  • Как проверить nginx установлен?

    Короче проблема достаточно банальна)) Из под простого юзверя ты не сможешь выполнить эти команды, так как nginx доступен для управления только рут пользователю. Из под рута which nginx и nginx -v прекрасно работают
    Ответ написан
    1 комментарий
  • Как расшифровать RSA с помощью Python?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Как такой текст расшифровать уже на Python 3


    К примеру вот так:

    import rsa
    import base64
    
    PRIVKEY = '''<<<SOMEDATA777
    -----BEGIN RSA PRIVATE KEY-----
    MIIEogIBAAKCAQEA3bv1e8E+bR53cvDwwwAF3Yhc+g47OvFpmmb0oi/H5xV/u1us
    UCBqgC0Apz1CcAAQJM/0TrKF7alfDeAvUD2E0E8SU7UxBHc3Bsn75Gs0wt3kVzqL
    TBfBRBW/qVdcNINkAnQUrOJ784OX8bMbH1DtMbvZAoBHFOaEv5G/fUWICBARsEsl
    hSvFxCXyY4tBwDgPTP1QaF/pzlHhl2L8EVUNNjworEoG897uaDwyJbbShfMlrgZG
    zEnNFr6WYlCsHAlKoWKYq2Duag4ojPV7bh9sVyXCketlZHkYgLb0suw5jZZYuZ42
    UhPtQYNKpDmWpnrECkUD6T/1UXTRHvubrKnvywIDAQABAoIBADcHs/gf0KdyPUD4
    jThIJCyD8Fda+tY5HfVlAefSpfEzA71zFgPY17Wx9YyMBpYXXepU9hQl+FkwhNfD
    wNpQOkscpLbDrEOodq6nqG1bMf/+4/HGJNYguyVzpFqZxNd/mG2Hc64ok4yvJyGk
    SuHtysBiF4yoW3vTbjTBLl4fyI//PquJk3pWE6n30ooVs/ZDIldDYxLTzaRhjGIl
    lSjq2K2ItlsOav912euGebjQXWXAd3m0F9ngrFLjljmCrE8qgDeuFmxd7x5Czvua
    AYgTJzMSbfBCSti1xOrmQGUX+BEhXVhlmhn5slaPh6h1L71uoeipAZS21QbXXAI3
    fT5nsdkCgYEA8yxRWMfZhZzRrCv/HAwzyZUfkfBRXqy+aacO6lUnE15qPb4aE8Em
    gYFCB20hsJczKakxQUiClRCn6yOfgLnJG/vq2vR5aydV7OEXBe6bT3j4RbGuCaZZ
    /RzuehoZqSpexclDFZvk54QgmfNZjoZxf/IAt+ZN6tUL8z51j4+JS78CgYEA6W4k
    N4xE0zCLds5DakeqbD3oEE9fY5NKJIp61JR4HVBASJU/e91SPWEbrAfcMTayTav5
    hyz7vN7aEh2UAeG5945PdmiATWnROSmQN3vin4AsLmeUFJHGL4qT77k5Wt9Ql43k
    QbEyjw+wQAdxnghLoiHyozYzsZhvbq942bvgDvUCgYBo1t+PdkIq38xp/WH0VrJx
    I3DD+6cpOTKy3EqK7wF00Uzep7oYcDrItNCh4QQYXWe6e2535eoemFq8/tPCrNau
    0PKVSbebYg8inHzPmuqs3cu0SIFvOaAshy+txtjvXQwVG8tnYpnS0t03Ynpm/0Gp
    1s1Ge+115DpNucz3gvu/gwKBgDOM0FC4GGbvPI1jJb4tz3QSA9K+RJmP6HrDXjbe
    BtyqYVfmJdvr14KYlGzcW4M+ygefJ/7zLzDZoh0IDSyRNel2sxO6JkNyT/Mou6GV
    KUoCGz+wPiKAwtyy5NK2+/SWhozBmBvtzvWLCGhLfIri2BkZGCV1Ddt1h35RIAYt
    mGCVAoGAK+IfA2Nkqi09xsU1KPPJTL4P54OsEbE5fNm+hxL1jpfU3cz7VV9X+yvV
    fseNn1qkQTvC4JERIypOnkti3xpsWaedP5fHHqveSDeR6ObRRTFcM990EogN9IzE
    WOUCpOARkqvdlQO5UwP4fVgJmKERicoHjsuWOf4byZad7FjJYE4=
    -----END RSA PRIVATE KEY-----
    SOMEDATA777'''
    
    privkey = rsa.PrivateKey.load_pkcs1(
        PRIVKEY,
    )
    
    crypted_text = "qwcxZgHZ1hccWeZG6UHV3s7qLTDBtz+tUiv/qOB9gxtm9JQRXnUb+MWXxU4oU+ek0y5EMR+QTh7w u0WivMjNxmmmvpWkBkcnigsqrosqnksvV5OSmcyu8/dMDdRpT87fsmTjrBlwrXBy+r9fZqQ2eILH X0dEsUNexQy2z24FCVJRpNTwH9bXpgCJkuQKOOA5jze2dUIA+78es1f09B3dQQEEWF5jNv2NlkKa L3teqYe1StJ0V8ButejzDoXzTxjgTLA1J7rJgbiJ7zooPRZafZakZwGDO2c2bB9fGDYd90TD4Y0G mBybEs/nThjGry/F+dtxu1df0O6HgPTDnnol6Q=="
    crypted_text = base64.b64decode(crypted_text.encode())
    
    message = rsa.decrypt(crypted_text, privkey)
    print('DECRYPTED> ', message.decode())


    DECRYPTED> PHP is my secret love.
    Ответ написан
    5 комментариев
  • Как отфильтровать элементы по дате изменения (bitrix, getList)?

    @margaret_murka Автор вопроса
    Если вдруг найдётся ещё человек у которого проблемы с оформлением, и тупые ошибки)
    $arFilter = array(">DATE_CREATE" => date('01.05.2021'), ">TIMESTAMP_X" => date('01.08.2021'));
    Ответ написан
    Комментировать
  • Как поступить с заказчиком?

    SeaInside
    @SeaInside
    15 лет пилю все эти штуки
    Вы ведь сами понимаете, что это ваш косяк, а не заказчика? А чего ему за него платить?

    Мне прям вспомнилась ситуация, когда я пришёл к стоматологу вылечить кариес (пусть будет 2 000 рублей), мне рассверлили весь зуб и заявляют "батюшки, да тут же пульпит!" (12 000 рублей).
    Помогите Маше найти фразу для стоматолога, которая позволила бы сохранить хорошие отношения.

    И вот вы сейчас, по прошествии 2 месяцев, оставите заказчика один на один с незавершённым проектом, в котором никто не разберётся (то есть по сути ни с чем) - то вы поступаете как чудак. Я же вижу по тексту, что понимаете.
    А сюда вы за индульгенцией пришли? :)

    Хотите "сохранить отношения" - доделывайте как есть, в будущем будете мудрее.

    Если совсем невмоготу - возвращаете оплату целиком и сильно извиняетесь (можно даже сверху накинуть).
    В таком случае о хороших отношениях говорить не приходится, но послевкусие хотя бы как от порядочного человека.

    Два совета на будущее:
    1) Перезакладывать стоимость и время разработки;
    2) Если понимаешь, что всё идёт не по плану/пропал интерес / слишком сложно / некомфортно / whatever - сказать об этом сразу и отказаться от проекта, так всегда получается честнее

    Опыт всегда стоит дорого, а 53 000 рублей - ну не самая большая цена его получения :)
    Ответ написан
    8 комментариев
  • Как он узнает, что (3, 5) - это arguments?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    arguments - это массив массиво-подобный объект аргументов, всегда присутствующий в функции (кроме стрелочных).
    Тут используется декоратор – функция-обёртка над другой функцией.
    Изначальная функция worker.slow()оборачивается в новую функцию-декоратор. Декоратор выполняет некую работу, вызывает оригинальную функцию, с ее результатом может выполнить еще какую-то работу, и возвращает итоговый результат.

    После выполнения этой строчки
    worker.slow = cachingDecorator(worker.slow, hash);
    в worker.slow у вас уже не оригинал, а декоратор. Т.е. эта функция
    function() {
        let key = hash(arguments); // (*)
        if (cache.has(key)) {
          return cache.get(key);
        }
    
        let result = func.call(this, ...arguments); // (**)
    
        cache.set(key, result);
        return result;
      };


    Именно она выполняется в последней строчке. Сюда передаются аргументы 3 и 5, которые и попадают в зарезервированный массив arguments.

    Можно переписать так, чтобы лучше понять, что происходит:

    function cachingDecorator(func, hash) {
      let cache = new Map();
      return function(arg1, arg2) { // явно указать аргументы
        let key = hash(arg1, arg2); // (*)
        if (cache.has(key)) {
          return cache.get(key);
        }
    
        let result = func.call(this, arg1, arg2); // (**)
    
        cache.set(key, result);
        return result;
      };
    }
    Ответ написан
  • Как убрать ошибку CORS сервер на Node js?

    @romant094
    Frontend-developer
    Вам нужно прописать разрешенные домены, с которых будут идти запросы к вашему серверу.
    https://expressjs.com/en/resources/middleware/cors.html
    Ответ написан
    Комментировать
  • Какие языки программирования применяются в различных отраслях Военно-промышленного комплекса?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Команду разработчиков на D надо еще поискать.

    Компилятор с D на какой-нибудь MCS51 надо еще поискать.

    И много других проблем. Хотите эффективно программировать железо - используйте C или C++.

    Сверхэффективно - ассемблер.

    Под "эффективностью" здесь понимается максимальное использование возможностей железа для решения задачи. А не создание за счет сильного железа подушки для низкоквалифицированных программистов и (или) менеджера с дефицитом времени.
    Ответ написан
    Комментировать
  • Что не так? syntax error, unexpected 'public' (T_PUBLIC)? (Полный код)?

    toxa82
    @toxa82
    У вас метод onDisable находится внутри метода onDamage
    Ответ написан
    Комментировать
  • Выводит ошибку: Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in что делать?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Перед соединением с БД надо написать строчку
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    после этого пхп будет писать реальную причину ошибки, а не эту ерунду.

    Колупаться, как тут предлагают, с mysqli_error() - это треш и прошлый век.

    Подробный пример того как правильно соединяться с БД, с выставлением всех необходимых опций
    Ответ написан
    9 комментариев
  • На чем писать/поднимать каталог недвижимости?

    Adamos
    @Adamos
    Имхо, тут нужна именно студия, а не какие-то отдельные спецы.
    Потому что такому сайту нужен в первую очередь сильный фронт. Бэк-то у него простой, как табуретка, его кто угодно напишет на той же Ларе. А вот вылизанный интерфейс, удобный для пользователя и при этом не укладывающий бэк запросами - это задача. Да вы же еще дизайн захотите фильдеперсовый, узнаваемый, и нужно будет как-то совмещать красоты с функционалом. И если впрягать в это дело трех фрилансеров (дизайнера, фронтендера и бэкендера) - скорее всего, закончится по басне Крылова или по монологу Райкина.
    Ответ написан
    2 комментария
  • Стоит ли использовать wordpress в России с марта 2022?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    Стоит ли использовать wordpress в России с марта 2022?

    Хотите учить - учите себе на здоровье.
    хотел спросить у поддержки в чем причина сказали, что с моим регионом они не разговаривают.

    Печально конечно, но встает вопрос: в документации, книгам по WP, российских поисковиках и сервисах вроде этого с вами тоже "не разговаривают"? Другими словами - способов найти решение проблемы все еще в избытке.
    А если вопрос в том "можно ли будет использовать ВП в дальнейшем?", то подумайте - каким образом разработчики ВП могут удалить ваш проект с арендованного вами сервера, размещенном на территории РФ?
    Ответ написан
    Комментировать
  • Никто не знает каким образом происходит взаимодействие с сервером после начала боя в tanki online?

    @goshaLoonny
    Какой еще пост запрос в многопользовательской онлайн игре?) Она работает с помощью websocket
    https://learn.javascript.ru/websocket
    https://developer.mozilla.org/ru/docs/Web/API/WebSocket
    и вот собственно запросы:
    6243595bbfefe240356518.jpeg
    Ответ написан
    Комментировать
  • Как добавить свойство в инфоблок?

    @Drayde
    Заходишь в элемент, нажимаешь справа на шестеренку, выбираешь "Настройка формы", в ней слева находишь нужное поле и перемещаешь его в блок справа.
    Ответ написан
    Комментировать
  • Как сделать, чтобы негасла подсветска в Xiaomi Mi Notebook Air 13,3?

    @deadd1wer
    Приветствую!

    Делается это через BIOS:

    1) при загрузке системы в то время пока на экране показывается logo "mi" жмем клавишу F2
    2) после попадаем в bios и выбераем -> Power -> KB Backlight Mode -> Выбераем его
    5e8a6e6da111d024583754.png
    3) У вас скорее всего будет сотяь в режиме "Power Saving"
    4) Вам же надо выбрать - "Standart"
    5)Жмем F10, сохраняемся.
    Готово теперь подсветка клавиатуры у вас всегда. Если хотим выключить ее жмем по F10 на находясь в загруженной системе, жмем еще раз включаем пока не надоесть
    Удачи!
    Ответ написан
    2 комментария
  • Как вы учили Figma?

    mixail_fet
    @mixail_fet
    Дизайнер веб-интерфейсов
    Учил методом тыка - обычный графический редактор, без каких либо сложных функций. Самый легкий способ изучить - сделать пару макетов.

    Когда я ее осваивал, она еще не была майнстримом, и видоуроков по ней не было, сейчас есть прекрасный курс, по нему полностью сможете освоить программу:
    https://vk.com/bookmarks?from_menu=1&w=wall-383683...

    Вот еще
    И вот
    Ответ написан
    Комментировать
  • Цель - WEB Full-stack. Сносный ли план обучения для новичка?

    vabka
    @vabka Куратор тега Веб-разработка
    Если бы это был вопрос "хороший ли это роадмап для asp net разработчика", то я бы сказал, что это отличный роадмап (за исключением питона, php, фриланса, и в принципе порядка изучения).
    Многое можно учить параллельно (английский)
    Что-то можно отложить (копание в алгоритмах)
    Ну и на счёт источников знаний не уверен - те же "Грокаем Алгоритмы" уж слишком для маслят книга.

    А вот по девопсу я что-то не вижу тут ничего.
    Для девопса важно:
    1. Понимать, как устроен процесс разработки. В идеале ещё и уметь писать код
    2. Уметь работать с ci/cd системами. Gitlab, Azure devops, Jenkins, Teamcity
    3. Уметь работать с git
    4. Уметь работать с линуксовой консолью, и с линуксом в целом
    5. Шарить за docker и k8s
    6. Понимать, что devops - это набор практик, а не должность.
    Ответ написан
    7 комментариев