Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
JimmDiGreez

JimmDiGreez

Full-stack Developer
  • 31
    вклад
  • 1
    вопрос
  • 27
    ответов
  • 74%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Какая запись вернее: $page = @$_GET['page'] или $page = isset($_GET["page"])? $_GET["page"]: null?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Тогда уж вернее empty($_GET['page']).
    Ответ написан более трёх лет назад
    7 комментариев
    7 комментариев
  • Как сделать чтобы file_get_html($url) не прерывал цикл?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Потому что break.
    Чтобы не прерывать, а перейти к следующей итерации используй continue.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему падает php7-fpm при повышенной нагрузке на MariaDB?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Может быть max_execution_time слишком велик и попросту пул процессов фпм заканчивается на таких злых запросах? Плюс, возможно у фпм установлена политика со статичным пулом.
    Ответ написан более трёх лет назад
    8 комментариев
    8 комментариев
  • Как получить id или position элемента при клике?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Записывай id на этапе получения из источника. Например мапь в data-классы. Cursor в конкретный момент всегда смотрит на одну конкретную строку, поэтому ты и получаешь не те айдишники элементов, по которым кликал, а айдишник с текущей позиции курсора.
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Как получить сумму всех значений data-attr?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    https://jsfiddle.net/2vbLL6f6/1/

    поправил немного.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как сохранить целое значение?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Можно в строке хранить.
    Или вот.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как решить проблему с добавлением обычных классов в легаси проект на вебформах?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez Автор вопроса
    Full-stack Developer
    В общем все оказалось очень просто. Не знаю, почему так долго не мог этого найти. В итоге наткнулся на это перебирая все возможные опции конфигурации. Для "левого" кода надо было в корне проекта создать директорию "App_Code", и в конфиге в секции compilation указать поддиректории в codeSubDirectories.
    https://msdn.microsoft.com/en-us/library/54dwfbb7(...
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как через if проверять была ли функция успешна?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Гадать не буду, какая либа для работы с dom деревом используется, потому в лоб.
    Конкретно в данном случае очевидно, что на выходе из функции у нас ожидается iterable (то есть либо array, либо объект реализующий Traversable). Соотственно можно проверить:
    $iframes = $html->find('iframe[src]');
    
    if (!is_iterable($iframes) 
        || ($iframes instanceof Countable && 0 === count($iframes)) 
        || ($iframes instanceof Traversable && 0 === iterator_count($iframes))) {
       // empty
    }


    А если речь про file_get_html, то в случае отсутствия контента или превышения размеров файла функция возвращает false и можно проверить простым сравнением с false.
    $html = file_get_html($url);
    
    if (false === $html) {
        // empty
    }

    Код функции тут
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Можно ли со стороны клиента (браузера) выполнить api запрос к сайту?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    В целом можно, но может помешать установленная политика cors.
    https://developer.mozilla.org/ru/docs/Web/HTTP/CORS
    Почти всегда есть ограничения.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как на Laravel реализовать сложный фильтр по выборку товаров из БД?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Например можно вынести функцию в переменную.
    $filter = function(query) {
        // ...
    };
    
    Good::select('id', 'name')->where($filter)->count();
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему я добавляю в .gitignore файлы, а их все равно отслеживает?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Потому что они уже были в индексе.
    https://git-scm.com/docs/git-rm#git-rm---cached
    git rm --cached
    позволяет убрать файлы из индекса, соответственно гитигнор на них подействует.

    git rm -rf --cached ios/build например.
    Поясню.
    -r - рекурсивно пройтись по заданому каталогу.
    -f - чтоб не ругался ни на что.
    Запись -rf дозволена соглашениями.
    --cached - удаление только из индекса (не самих файлов).
    ios/build - пусть к папке, в которой эту экзекуцию провести. (можно так же полный путь записать)

    package-lock.json кстати оставь.
    Ответ написан более трёх лет назад
    7 комментариев
    7 комментариев
  • Как найти вложение в многомерном массиве и добавить элементы?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Найдено в гугле:
    Рекурсивный вариант:
    function getArray($array, $index) {
        if (!is_array($array)) return null;
        if (isset($array[$index])) return $array[$index];
        foreach ($array as $item) {
            $return = getArray($item, $index);
            if (!is_null($return)) {
                return $return;
            }
        }
        return null;
    }

    Итеративный вариант:
    function getArray($array, $index) {
        $queue = array($array);
        while (($item = array_shift($queue)) !== null) {
            if (!is_array($item)) continue;
            if (isset($item[$index])) return $item[$index];
            $queue = array_merge($queue, $item);
        }
        return null;
    }


    Источник
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как правильно составить регулярное выражение на php?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Финальная регулярка:
    https://regex101.com/r/9hfuzi/2/
    ([^@]{1}|^)(@[a-zA-z\d]+)
    В ней на замену только группа 2, значит preg_replace использовать с маской.
    $replacement = '$1ЗАМЕНА';
    Ответ написан более трёх лет назад
    14 комментариев
    14 комментариев
  • Какие задачи должен выполнять RESTful?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    1. Сам не встречал, но предположу, что для виджетов каких-нибудь норм будет.
    2. Рест, конечно же, пишут на серве. А клиент хоть баба яга, не должно рест сервис волновать. Если только специально запрещать.
    3. п.2
    4.5. нет. протокол аутентификации можешь любой выдумать. Достаточно того, что бы он был стейтлесс.

    Вообще зря смешиваешь рест как клиент и сервер одновременно. Рест только сервер.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Почему сервер выдает 500 ошибку?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Ну-с, в ходе обсуждения выяснили, что после установки php свежей версии apache не был сконфигурирован на его использование.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как вызвать функцию внутри функции?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Очень вероятны ошибки с this, давно очень на js не писал.

    $(document).ready(function() {
      var Game = {
        isGameStarted: false,
        start: function(event) {
          // для этого метода нужна блокировка, но и так сойдет пока.
          if (true == this.isGameStarted) {
            return;
          }
    
          if ($('.user_name').val() == '') {
            $('.errors').html('<p class="errors_p">Введите имя!</p>');
            return;
          }
    
          this.isGameStarted = true;
    
          $('.start_game_box').addClass('hidden');
          $('.user').removeClass('hidden');
    
          $(document).keydown(this.goUser);
        },
        goUser: function(event) {
          if (false == this.isGameStarted) {
            return;
          }
    
          var pz_user = $('.user').offset(),
          top = pz_user['top'],
          left = pz_user['left'];
    
          if (event.which === 38) {
            var top = top -5;
            $('.user').css('top', top + 'px')
          }
    
          if (event.which === 40) {
            var top = top +5;
            $('.user').css('top', top + 'px')
          }
    
          if (event.which === 37) {
            var left = left -5;
            $('.user').css('left', left + 'px')
          }
    
          if (event.which === 39) {
            var left = left +5;
            $('.user').css('left', left + 'px')
          }
        }
      };
    
      $('.btn_start').on('click', Game.start);
    });
    Ответ написан более трёх лет назад
    5 комментариев
    5 комментариев
  • Можно ли будет создавать крутые андроид приложения если пройти курс JavaRush?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Можно. Если JavaRush'ем все не ограничится.
    Или этот курс для этого не предназначен

    Насколько знаю там только java, и пару лет назад я очень низко оценил, если там ничего не поменялось, то и джаву там учить смысла особо нет.
    Если нет, то можете посоветовать, где можно учить андроид разработку.

    startandroid.ru/ru
    developer.alexanderklimov.ru/android
    Навскидку.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Выборка с группировкой и суммой?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    SELECT `geo`, sum(`good`) as `sum_good` FROM `stat` GROUP BY `geo` ORDER BY `sum_good` DESC


    Но это не точно)
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему после переноса на сервер не принимаются запросы?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Такая ошибка бывает, когда интерпретатору не передан корректный путь до php файла. Тут надо конфиг веб-сервера смотреть.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Почему когда делаю POST запрос данные отправляю нормальные, а возвращаются null?

    JimmDiGreez
    JimmDiGreez @JimmDiGreez
    Full-stack Developer
    Как выяснилось в комментариях дело оказалось в неправильном Content-Type запроса.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • Следующие →
Самые активные сегодня
  • NikFaraday
    Nik Faraday
    • 7 ответов
    • 0 вопросов
  • DevMan
    DevMan
    • 6 ответов
    • 0 вопросов
  • Никита Савченко
    • 1 ответ
    • 4 вопроса
  • Vindicar
    Vindicar
    • 5 ответов
    • 0 вопросов
  • DF Wastaken
    • 4 ответа
    • 1 вопрос
  • PavelMos
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации