Задать вопрос
  • Вывод информации php?

    Skiphog
    @Skiphog
    Crutch developer
    Вопрос очень простой.

    Но простой он не потому, что реализация простая, а потому, что это наверное один из самых популярных запросов в поисковике на эту тему (возможно :-D)

    Вы можете погуглить и получить много решений этой задачи и воспользоваться им, а так же воспользоваться ответом выше, т.к. функции mb_ - это отличный вариант.

    Но вы можете не верить никому ))) ... и подсмотреть как это делает какой-нибудь Laravel
    https://github.com/laravel/framework/blob/8.x/src/...

    Избавившись от привязки к классу, можно взять эту функцию себе на вооружение примерно так:
    function limit($value, $limit = 100, $end = '...')
    {
        if (mb_strwidth($value, 'UTF-8') <= $limit) {
            return $value;
        }
    
        return rtrim(mb_strimwidth($value, 0, $limit, '', 'UTF-8')) . $end;
    }

    И это тоже ответ на ваш вопрос.
    А что использовать, решать вам.
    Ответ написан
    Комментировать
  • Вывод информации php?

    E1ON
    @E1ON
    Programming, Gamedev, VR
    $out = mb_strlen($in) > 150 ? mb_substr($in, 0, 150)."..." : $in;
    Ответ написан
    2 комментария
  • Работа с циклом?

    0xD34F
    @0xD34F Куратор тега JavaScript
    .children(i)

    Нет.

    Так оно не работает.

    Откуда вы взяли, что в children можно указывать индекс?

    Этот метод ожидает, что будет передан селектор, а не индекс (бегом читать документацию). Селектор должен быть строкой - значения других типов игнорируются. Так что у вас на каждой итерации цикла обрабатываются все дочерние элементы, а не один.

    Как бы мог выглядеть ваш "цикл":

    $.each(res, function(i, n) {
      this
        .eq(i)
        .html(`${n[1]}<input type="hidden" value="${n[0]}">`)
        .css('display', 'block');
    }.bind($('.box-results-search').children()));
    Ответ написан
    Комментировать