Задать вопрос
  • Как игнорировать или пропускать варнинги при вставке значений из одного массива в другой?

    @rPman
    если тебе не надо это контролировать, то игнорировать
    @$data->{'id'}

    p.s. вторым параметром json_decode пропиши true, тогда результатом будет не object а array в нужном тебе виде, да и работать можно будет с ним $data['id']
    Ответ написан
    9 комментариев
  • Как игнорировать или пропускать варнинги при вставке значений из одного массива в другой?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Нужно проверять каждое значение перед использованием.
    Смотрите в сторону конструкций empty($var), isset($arr['index']), $myVar = $input[123] ?? null и прочих
    Ответ написан
    3 комментария
  • Почему PHPStorm советует static для fn функций?

    miraage
    @miraage
    Старый прогер
    Не кодил на PHP 100 лет, точного ответа не подскажу. Однако идея, что статическая лямбда будет видеть меньше переменных -> проще для GC = уже кажется, как небольшая победа.

    https://www.designcise.com/web/tutorial/what-are-s...
    https://www.php.net/manual/en/functions.anonymous....
    Ответ написан
    1 комментарий
  • Как найти папку с DOCUMENT_ROOT?

    svisch
    @svisch
    /home/u/username/sitename.ru/public_html - это абсолютный путь расположения скрипта на веб-сервере.
    В админке битрикс скорее всего видит файлы начиная с public_html, где он и лежит видимо.
    Ответ написан
    2 комментария
  • Как защитить приложение на js+php пока не заплатили?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    1. Развернуть приложение полностью на 100% на своем сервере, а код разместить в своем приватном репозитории.
    2. Показать клиенту, что все задачи выполнены по ТЗ.
    3. Получить оплату на 100%.
    4. Разместить приложение на сервере клиента, а код - в его репозитории.


    Просто по договоренности оплата пойдет только после установки программы на компьютер клиента.

    Если в прошлый раз клиент кинул - что помешает ему сейчас кинуть? Просто не передавайте результат до оплаты, аргументируя это предыдущим случаем.
    Ответ написан
  • На основе чего генерируются чертеж?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Обычная алгебра с капелькой тригонометрии и какая-то библиотека для формирования PDF.
    Ответ написан
    Комментировать
  • Насколько хорошо бэкенд-разработчик должен знать SQL?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Ожидаю уверенного владения SQL как минимум в стандарте 2003, а также понимание реляционной теории. Ну и надо понимать, что кандидатов джунского уровня сотня в неделю, чтобы пробиться на место, нужно выделяться среди других, поэтому чем больше знаешь, тем лучше. Покажешь умение читать планы выполнения - плюс, показал владение оконными функциями - ещё плюс, рассказал про WAL при обсуждении транзакций - снова плюс, смог к этому ещё и объяснить про MVCC - совсем молодец. И т.д. и т.п.
    Ответ написан
    Комментировать
  • Насколько хорошо бэкенд-разработчик должен знать SQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Безотносительно SQL. Любое собеседование на Джуна - это экзекуция. Потому что опыта нет. И от скуки тебя гоняют по всем основам. Если SQL то погнали. Нормальные формы. Транзакция. Если язык java/c# то давай напиши сортировку в 2 потока.

    Вобщем бить будут. Поэтому зубри.
    Ответ написан
    Комментировать
  • Для чего использовать __DIR__?

    Adamos
    @Adamos
    Если хоть чуть-чуть почитать документацию, трудно не заметить, что при указании относительного пути пых ищет файл в подходящих местах (которые, кстати, не обязательно совпадают с тем, что вы имели в виду).
    При указании же абсолютного - не ищет.
    Ответ написан
    Комментировать
  • SQL запрос, как избавится от массива в массиве?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    ->get() ->first()
    А вообще вопрос на уровне документации и легко ищется поисковиком, учитесь использовать источники.
    Ответ написан
    6 комментариев
  • Fan stop в видеокартах это нормально?

    New_Horizons
    @New_Horizons
    Бред:
    так если температура меньше 60 градусов, чего им крутиться зря?) не вижу проблемы что-то)
    Ответ написан
    2 комментария
  • Что означает данная запись в PHP?

    В данном коде формируется массив в котором ключ массива задается из $row['key'], а значение из $row['value'].
    $row['value'] в квадратных скобках для того, чтобы элемент массива был также массивом.

    // исходная строка
    $options[$k] = [$row['value']];
    // означает то же самое, что
    $options[$k] = array($row['value']);
    // или
    $options[$k][] = $row['value'];


    В вашем случае используется короткий синтаксис для array(), который поддерживается с версии 5.4.
    $array = array(
        "foo" => "bar",
        "bar" => "foo",
    );
    
    // Использование синтаксиса короткого массива
    $array = [
        "foo" => "bar",
        "bar" => "foo",
    ];


    Подробнее о массивах php здесь:
    https://www.php.net/manual/ru/language.types.array.php
    Ответ написан
    Комментировать
  • Какие файлы считаются небезопасными для загрузки на сервер?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    Все файлы безопасны. Можно загружать и .php и .apk, главное запретить исполнение и разрешать только скачивание.
    Отдельно конечно вопрос по содержимому, так как зальют вам вирус - за это сайт выкинет гугл или яндекс или попадёте в чёрные списки. Зальют картинку или видео с сомнительным содержимым, уже придёт роскомнадзор или хостер выкинет вас или регистратор заблокирует домен.
    Ответ написан
    Комментировать
  • Какие файлы считаются небезопасными для загрузки на сервер?

    @tukreb
    Все файлы небезопасны. Можно загрузить картинку, в которой будет исполеяемый код.
    Вы должны настроить сервер (nginx/apache) так, чтобы в папке где будут загруженны клиентами файлы, в принципе нельзя было исполнять НИКАКИЕ файлы.
    Ответ написан
    Комментировать
  • Как запросом проверить входит ли дата из списка в диапазон дат?

    @alexalexes
    Выносите даты в отдельную таблицу:
    Название таблицы: location_event_dates
    id - идентификатор даты;
    location_event_id - идентификатор из таблицы location_event (то, что у вас в вопросе)
    event_date - одна из дат события (в формате даты, а не строки!)
    Тогда будет нормальный поиск:
    select le.id, le.locationid, le.eventid,
              led.event_date
    from location_event le
    join location_event_dates led on led.location_event_id = le.id
    where led.event_date between :begin_date and :end_date
    Ответ написан
    Комментировать
  • Стоит ли изучать sql, или же сразу заняться изучением ORM?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Стоит ли изучать sql, или же сразу заняться изучением ORM?

    Все люди которые ратуют за использование ORM с годами все равно приходят к очень сильной
    и мотивированной необходимости знать SQL. Этот язык сегодня является латынью баз данных.
    Вы сможете говорить с бизнесом на одном языке если будете в переписке активно использовать
    например язык DDL таблиц. Ваши аргументы будут выглядеть убедительно если в переписке будут
    фрагменты например любой консоли MySQL, psql, SQL*Plus e.t.c. Короче знание SQL - это признак
    джентльмена. Путь в приличное общество.

    И наоборот, вы будете вообще НЕПОНЯТЫ если попробуете показать ORM объект на Node или не дай
    бох на Java/JPA техниках аннотации. Бизнесу эти аннотации неинтересны и неинформативны.

    Да и вам самомму смоделировать любой сложности выборку или отчет будет бытрее в SQL чем в фрейморках
    ООП-отображения.

    Что касаемо перформанса. К сожалению все современные ORM реализуют только самые базовые возможности
    оптимизации запросов. Насколько я знаю Hibernate (по состоянию на 2015 год) так и не умел обращаться
    с Oracle Hints. А любой сложный ентерпрайз начинается там где вы выжимаете из запроса не 100 а 1000%
    возможностей. И здесь вам нужно управлять проприетарными функциями воздействия на оптимизатор.

    Вообще для меня например цикл оптимизации ORM запросов начинается с того что я выбрасываю из
    стека ORM. Заменяю на native. И долго наблюдаю его и оптимизирую. И когда достиг критерия готовности
    то пытаюсь затащить обратно в ORM. Иногда не заходит. Это те случаи когда ORM оказался плох.
    Эти случаи сложны, синьорны. и по каждому из них можно здесь в хабре открывать статью как минимум.

    Но не все так плохо. Существует взгляд на ORM с обратной стороны. Это фреймворки наподобие MyBatis.
    Они в первую очередь решают проблемы БД а уж потом дают опции объектных возможностей. Короче
    Батис - это ОРМ наоборот. Где эволюция системы идет не от кода к БД (как любят хипстеры) а от
    имеющихся вызовов процедур
    и запросов к объектам респонса.
    Ответ написан
    5 комментариев
  • Почему не переключается php на новую версию на сервере?

    ValdikSS
    @ValdikSS
    sudo update-alternatives --config php
    Читайте справку к используемому дистрибутиву.
    Ответ написан
    Комментировать
  • Что нужно исправить чтобы все работало?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    К сожалению друзей и знакомых нет в этой сфере нет и помочь некому.
    Это не так. У вас есть как минимум 2 друга (как минимум в данной задаче) - интерпретатор php и гугл. Первый знает что происходит, а второй как это исправить.

    вдруг у кого получится сделать так, чтобы все работало
    Вдруг ничего не бывает.
    1) Читаете ошибку, если все понятно - исправляете.
    2) Если не понятно - гуглите.
    3) Если и так не помогло - тогда по конкретной проблеме пишете сюда.
    4) Разбираетесь что надо сделать, правите
    5) При возникновении ошибки повторяете с п. 1 по п. 4.
    Ответ написан
    Комментировать
  • Что значит single responsibility в контроллере?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Сколько людей - столько мнений. Не стоит прям вообще всех слушать, кто высказывает какие-то "гениальные" откровения. Даже внутри крупных фреймворков многие вещи реализованы по разному, и каждый считает что именно так надо, и никак иначе. Думаю автор статьи просто искал дешевого хайпа, на практике никто так не делает. Контроллер по сути не модель, а управляющая конструкция, в ней нормально внутреннее ветвление на методы. С таким же успехом можно решить что для модели нужно 4 репозитория, на каждое действие CRUD...
    Ответ написан
    1 комментарий
  • Как лучше организовать архитектуру проекта?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Меня заклюют, но интернет магазин и классы как вы их понимаете вообще не рядом.
    Вы пытаетесь построить классы и связи между ними, чтобы избежать дублирования информации. Но смотрите. Сферический товар:
    Просто лежит на витрине.
    Участвует паралельно в акции.
    Добавлен в корзину.
    Стал частью заказа.
    Часть фискального чека.
    Архив.
    Учетная система магазина.
    Лежит на центральном складе.
    Откупается у поставщика

    и прочее и прочее. И в каждом случае у него своя цена
    А первое желание у вас как я понимаю было сделать одно поле цена в классе товар ?
    Ответ написан
    4 комментария