Задать вопрос
  • Как вывести данные в html таблицу?

    0xD34F
    @0xD34F
    $headers = array_column($data[0]['pages'], 'name');
    $columns = array_column($data[0]['pages'], 'attribute');
    $rowCount = max(array_map('count', $columns));
    
    $headersHTML = implode('', array_map(function($n) {
      return "<th>$n</th>";
    }, $headers));
    
    $rowsHTML = implode('', array_map(function($i) use($columns) {
      return "
        <tr>".implode('', array_map(function($n) use($i) {
            return "<td>".($n[$i] ?? '')."</td>";
          }, $columns))."
        </tr>";
    }, range(0, $rowCount - 1)));
    
    echo "
      <table>
        <thead>
          <tr>$headersHTML</tr>
        </thead>
        <tbody>$rowsHTML</tbody>
      </table>";
    Ответ написан
    Комментировать
  • Как создать свойство внутри метода?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1. Делают ли так?
    Делают, но это не хорошая практика. Во первых имеете шанс затереть какие-то настроечные данные объекта и получить непредсказуемость поведения. Во вторых, если у вас там значения из бд или другого хранилища в формате ключ-значение, лучше хранить их в отдельном поле, том же дата, но в виде stdClass, чтобы не путать их при работе с хранилищем с остальными полями, например так:
    public function setData(array $data):void{
      $this->data = (object)$data;
    }

    в идеале у вас должен быть DTO (data transfer object), но в актив рекорд движках он обычно не используется.
    Ответ написан
    4 комментария
  • На каких сайта и для чего можно применить слайдер ДО и ПОСЛЕ?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    Любой сайт где есть логика "до и после".
    Например "до сломанного носа | после"(сайт пластической хирургии), или
    "Тупой вопрос | пример рестайлинга вопроса после осознания его тупости"(сайт собрания глупых вопросов с тостера"
    Ответ написан
    2 комментария
  • Как сделать из строки число, а потом опять строку?

    @KingstonKMS
    Уберите х и храните числа. При выборке добавляйте х когда надо с помощью CONCAT функций
    Ответ написан
    Комментировать
  • Вопрос по сборке стационарного ПК?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1. Памяти много не бывает, ставьте 32Gb.
    2. Брать надо не SATA SSD, а NVMe, например 250 ГБ SSD M.2 накопитель Samsung 970 EVO [MZ-V7E250BW]
    3. Материнскую плату, при прочих равных, лучше брать с четырьмя слотами под память, легче будет расширять в будущем.
    4. При выборе корпуса учитывайте размер блока питания. Многие малогабаритные корпуса идут с малогабаритными же БП, которые труднее найти в продаже при необходимости замены. Также смотрите, чтобы в корпус поместился кулер, хорошие тихие кулеры зачастую имеют внушительные габариты.
    5. При сравнении с ноутом вы почему-то не учли стоимость монитора, клавиатуры, мыши, колонок, веб-камеры и источника бесперебойного питания.
    Ответ написан
    5 комментариев
  • Как правильно сделать пагинацию?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Из приведенного кода не понятно как происходит
    если я, например, нахожусь на проекте с id=5 (а id=6 еще нет) и при этом я нажимаю на кнопку "Вперед", то меня переносит на страницу с id=6, которой не существует и я просто получаю ошибку.


    Общая идея пагинации: смотрите какие у вас есть данные в базе, исходя из этого формируете ссылки на возможные страницы.
    Если вы хотите сделать цикличную - ну так и сделайте её, добавьте в свою логику проверку "id больше чем текущий не найдено" и корректно обрабатывайте.
    Ответ написан
    Комментировать
  • Как подключить переднюю панель к мат.плате?

    SagePtr
    @SagePtr
    Еда - это святое
    Порядок подключения значения не имеет, главное, чтобы позиции совпадали с отмеченными на схеме. Для светодиодов также нужно соблюсти полярность, иначе светить не будет. В Reserved ничего подключать не нужно, этот штырь не используется.
    Ответ написан
    Комментировать
  • Передача значений из checkbox?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    1. Если под перезагрузкой ты имеешь в виду просто перезагрузку, а не отправленную форму → используй sessionStorage. Это просто JS.
    2. Если ты хочешь, чтобы после отправки формы, ее валидации и обработке тебе приходили данные — тебе необходимо на стороне сервера иметь хранилище этих данных. Обычно в этой роли выступают БД с пользователями, привязками и т.д., а тут уже отличным решением будет использовать фреймворк на ЯП, в котором будет либа форм, с помощью которых ты при сохранении данных в модели при загрузке этой формы снова (скажем редактирования чего-либо), ты получишь prepopulated form.
    3. Если же ты хочешь гонять форму без каких-либо проверок, просто передавая данные в POST\GET, с сабмитом формы ведущий туда же, то тебе надо сформировать генерацию документа посредством ЯП, который разберет запрос и сможет сделать банально так:
    <input type="checkbox" checked="<?= $field[3] != true ?: 'checked' ?>">...

    либо разбирать запрос JS и уже раздавать значения в загруженной странице.

    Иными словами, все зависит от конечной цели.
    Ответ написан
    Комментировать
  • Насколько быстрее этот процессор?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    сохрани себе этот сайт и сравнивай
    https://www.chaynikam.info/cpu_comparison.html?Cor...
    Ответ написан
    Комментировать
  • Почему не подключается файл?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    error 500 это общая ошибка, то есть на самом деле ошибка может быть любая, но так как у вас подавлен вывод ошибок отдается общая ошибка - 500. Смотрите логи, или включите вывод ошибок чтобы получить реальную ошибку.
    Ответ написан
    Комментировать
  • Когда применяем паттерн Стратегия, а когда Декоратор?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Стратегия = полиморфизм, то есть мы завязаны на некий интерфейс, а какая реализация — нам не важно. Это история про зависимости. Ну например почтальон отдает пенсию бабушкам (любым, какой бабушке именно — зависит от стратегии, КОТОРАЯ НЕ СВЯЗАНА с модификацией конкретной бабушки:)

    Декоратор, это про добавить функционал в рамках одного интерфейса, тут вообще не рассматривается вопрос каких-либо отношений (к примеру бабушки и почтальона), тут рассматривается — бабушка в шубе или бабушка с загаром или бабушка на коляске, все та же бабушка, но "обернутая" неким поведением :) Главное что бабушка всегда остается быть той самой для всех бабушкой. То есть это не противопоставление — ни в начале ни в середине мы не завязываемся на дополнительное поведение бабушки у почтальона. Бабушка и все, а какая именно — зависит от стратегии разноса (например по названию улицы). Если выйдет к нему "декорированная" бабушка-качок — пенсию он даст ей также, как и не качку, тк она для него всего лишь некий субъект/абстракция, главное чтобы возраст и ФИО сошлись.

    Соответственно это никак не похожие паттерны, один поведенческий, другой структурный... Они применяются всегда в любой этап разработки. Я в самом начале могу сделать декоратор обычной бабушки в виде поющей бабушки, а почтальона или внука в виде стратегии написать потом. А могу наоборот — сначала научить возить бабушек на трамвае (через стратегию), а бабушек с костылями (декоратор) добавить позже...

    Кое-где не корректные аналогии, и в аналогии стратегия есть бабушка, но в целом для понимания норм и не критично :)
    Ответ написан
    Комментировать
  • Как чекать и сохранять несколько типов проксей в txt файл используя curl_multi?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Если бы тостеру платили 10 копеек за каждый вопрос "как мине настроеть проксе для курл памагитя ниумею гуглить", то он бы уже давно работал на серверах из чистого золота
    Ответ написан
    7 комментариев
  • Как разделить сервер пополам?

    Jump
    @Jump
    Системный администратор со стажем.
    Есть сервер, два IP нужно разделить сервер пополам,как лучше сделать?
    Бензопилой.
    какую главную ос поставить чтоб вируализировать и windows и linux?
    Гипервизор надо ставить, а не ОС. Из самого актуального wmware и hyper-v

    я предполагаю поставить windows server core и запустить две виртуалки
    Это как? Зачем вам windows server core? и куда вы собираетесь ставить гипервизор?
    Ответ написан
    2 комментария
  • Для чего так делают?

    @Nc_Soft
    Интерфейс ГАРАНТИРУЕТ наличие такого метода в классе.
    Ответ написан
    3 комментария
  • В git закоммитил в master - как исправить?

    bingo347
    @bingo347
    Crazy on performance...
    # переименуем master в experiment
    git checkout master
    git branch -m experiment
    # удалим удаленный master
    git push --delete origin master
    # зальем текущую ветку на удаленный репо:
    git push -u origin experiment
    # переключимся на комит с которого пойдет мастер по его хэшу:
    git checkout 3624ce5
    # ответвимся от сюда в новую ветку с именем master
    git checkout -b master
    # и залем ее на удаленный репо
    git push -u origin master
    Ответ написан
    4 комментария
  • Как реализовать доступ к бд в классе пользователя?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Будет ли нормально сделать вот так?

    Конечно нормально.
    Будет, к примеру, в приложении 10 разных классов - и будет 10 соединений с БД. 100 классов - 100 соединений. Что тут такого?

    Как реализовать доступ к бд в классе пользователя?

    По-хорошему, в классе User не должно быть никакого доступа к БД. Но до понимания этого тебе ещё лет пять.

    Поэтому можешь просто подключиться с БД и передать в класс уже готовое соединение
    public static function setup($pdo)
        {
            self::$db = $pdo;
        }


    Но учитывая что у тебя никакой не ООП а голимая процедурщина, то можешь просто писать global $pdo в "методах" своего "класса" и не париться
    Ответ написан
  • Возможно ли из полученного скриптом http ответа с сайта получить нужное содержимое которое можно увидеть на веб-странице?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега HTML
    Руководитель frontend направления, предприниматель
    Используй API, а не подпирай костылями URI-ы.
    Ответ написан
    2 комментария
  • Как решить эту проблемку?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Прочитать логи, увидеть сообщение о синтаксической ошибке в запросе и убрать лишнюю запятую.
    Ответ написан