Ответы пользователя по тегу PHP
  • Как декодировать json в php?

    lidacriss
    @lidacriss
    wtf
    json_decode
    По полученным декодированным объектам ходить таким образом:
    $json_decode->date-add-wl->field->data-> и тд
    Ответ написан
    Комментировать
  • Что не так с регулярным выражением для поиска тега h1?

    lidacriss
    @lidacriss
    wtf
    preg_match($text, $pattern, $matches);
    в preg_match
    сначала идет паттерн, потом текст, потом матч

    preg_match
    int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )

    Ответ написан
    Комментировать
  • Что не так с регуляркой?

    lidacriss
    @lidacriss
    wtf
    не получится у вас
    Array ( [0] => hypertext [1] => ) language), programming )

    т.к. вы начало съедаете
    вы должны понимать, что делает preg_split
    она разбивает строку по регулярному выражению.
    если у нас регулярка ^[^)]+"выкусывает" эту часть:
    hypertext) language), programming

    то и получится у вас результат:
    Array ( [0] => [1] => ) language), programming )
    Ответ написан
  • Как правильно зафиксировать последнее значение (в конце дня) в БД?

    lidacriss
    @lidacriss
    wtf
    может проще всегда писать во вторую специальную таблицу, но перезаписывать значение сегодняшнее

    INSERT INTO table_name (`column1`, `column2`, `column3`, `date`)
    VALUES ('value1', 'value2', 'value3', CURDATE())
    ON DUPLICATE KEY UPDATE 
    `column1`=VALUES(`column1`), 
    `column2`=VALUES(`column2`), 
    `column3`=VALUES(`column3`);


    В таком таблице колонка с датой должны быть уникальна
    Таким запросом должно писаться только 1 значение по каждому дню
    только оно будет постоянно перезаписываться и актуальным будет только последнее значение за каждый день
    Ответ написан
    Комментировать
  • Как отфилтровать массив в php удалить дубликаты и объеденить значение уникальных ключей в одну строку?

    lidacriss
    @lidacriss
    wtf
    Если нужно смотреть только на 'DAY_NUMBER', то примерно так:
    Наш массив
    $arr = [
        [
            'ID' => '105653877',
            'CABLAB_NAME' => 'Участок',
            'DEPARTMENT_NAME' => 'Отдел',
            'DEPARTMENT_KIND' => '6405222',
            'EMPLOYER_ID' => '78621962',
            'EMPLOYER_NAME' => 'Иванов И. И.',
            'SERVICE_ID' => '',
            'SERVICE_NAME' => '',
            'DEVICE_NAME' => '',
            'DAY_NUMBER' => '1',
            'HOURS_BEGIN' => '08',
            'MINS_BEGIN' => '00',
            'HOURS_END' => '14',
            'MINS_END' => '00',
            'TIME_BEGIN_S' => '08:00',
            'TIME_END_S' => '14:00',
            'TIME_TYPE' => '6338504',
            'TIME_TYPE_CODE' => '1',
            'RCOUNT' => '1',
            'RCOUNTMAX' => '',
            'TIME_OR_COUNT' => '0',
            'RTIME_PRIM' => '15',
            'SORT_F' => '2',
            'ONLY_VIEW' => '0',
        ],
        [
            'ID' => '105653877',
            'CABLAB_NAME' => 'Участок',
            'DEPARTMENT_NAME' => 'Отдел',
            'DEPARTMENT_KIND' => '6405222',
            'EMPLOYER_ID' => '78621962',
            'EMPLOYER_NAME' => 'Иванов И. И.',
            'SERVICE_ID' => '',
            'SERVICE_NAME' => '',
            'DEVICE_NAME' => '',
            'DAY_NUMBER' => '3',
            'HOURS_BEGIN' => '08',
            'MINS_BEGIN' => '00',
            'HOURS_END' => '14',
            'MINS_END' => '00',
            'TIME_BEGIN_S' => '08:00',
            'TIME_END_S' => '14:00',
            'TIME_TYPE' => '6338504',
            'TIME_TYPE_CODE' => '1',
            'RCOUNT' => '1',
            'RCOUNTMAX' => '',
            'TIME_OR_COUNT' => '0',
            'RTIME_PRIM' => '15',
            'SORT_F' => '2',
            'ONLY_VIEW' => '0',
        ],
        [
            'ID' => '105653877',
            'CABLAB_NAME' => 'Участок',
            'DEPARTMENT_NAME' => 'Отдел',
            'DEPARTMENT_KIND' => '6405222',
            'EMPLOYER_ID' => '78621962',
            'EMPLOYER_NAME' => 'Иванов И. И.',
            'SERVICE_ID' => '',
            'SERVICE_NAME' => '',
            'DEVICE_NAME' => '',
            'DAY_NUMBER' => '5',
            'HOURS_BEGIN' => '08',
            'MINS_BEGIN' => '00',
            'HOURS_END' => '14',
            'MINS_END' => '00',
            'TIME_BEGIN_S' => '08:00',
            'TIME_END_S' => '14:00',
            'TIME_TYPE' => '6338504',
            'TIME_TYPE_CODE' => '1',
            'RCOUNT' => '1',
            'RCOUNTMAX' => '',
            'TIME_OR_COUNT' => '0',
            'RTIME_PRIM' => '15',
            'SORT_F' => '2',
            'ONLY_VIEW' => '0',
        ]
    ];
    $new_arr = [];
    foreach ($arr as $index => $item) {
        $id = $item['ID'];
        $new_arr[$id] = $new_arr[$id] ?? $item;
        $day = $item['DAY_NUMBER'];
        $days = explode(', ', $new_arr[$id]['DAY_NUMBER']);
        if (!in_array($day, $days))
            $days[] = $day;
        sort($days);
        $new_arr[$id]['DAY_NUMBER'] = implode(', ', $days);
    }
    Ответ написан
    Комментировать
  • Как работают уведомления toster'a?

    lidacriss
    @lidacriss
    wtf
    примерно вот так
    $(document).on("click", ".event__checkbox", function () {
            (function (cb) {
                cb.prop("checked") ? cb.closest("@event_item").addClass("events-list__item_checked") : cb.closest("@event_item").removeClass("events-list__item_checked");
                cb.prop("checked") ? cb.closest("@event_checker").attr({title: "Пометить как прочитанное"}) : cb.closest("@event_checker").attr({title: "Пометить как непрочитанное"});
                $.post("tracker/feed_mark_seen_event", {
                    event_id: cb.data("event_id"),
                    state: cb.prop("checked") ? 1 : 0
                }, "json").fail(fail_func)
            })($(this))
        });
    Ответ написан
    1 комментарий
  • Как в моём случае должна выглядеть регулярка?

    lidacriss
    @lidacriss
    wtf
    preg_replace('/^([\s\d]+).*/is', '$1', $str);
    потом можно еще удалить пробелы
    preg_replace('/\s+/', '', $str);
    Ответ написан
    Комментировать
  • Почему интерпретатор ругается на ?> в php?

    lidacriss
    @lidacriss
    wtf
    в конце FORM_HTML; уберите табуляцию :)
    Ответ написан
    4 комментария