• Существует ли какой-то общепризнанный подход к обработке ошибок в контексте API, где его можно посмотреть?

    @zkrvndm
    Софт для автоматизации
    Чем вас не устраивает такой формат?
    {
       'success': false,
       'message': 'Ошибка такая-то'
    }
    Ответ написан
    1 комментарий
  • Laravel много доменов 1 приложение?

    @Div100 Автор вопроса
    Вообщем вот решение, которое мне нужно было:

    $appRoutes = function () {
        Route::get('/', function ($domain, $tld = null) {
            //e.g. domain.tld, site.com, localhost, google.com ...
        });
    };
    
    Route::group(['domain' => '{domain}.{tld}'], $appRoutes);
    
    Route::group(['domain' => '{domain}'], $appRoutes);
    Ответ написан
    Комментировать
  • Как заменить html-код через Javascript?

    iiiBird
    @iiiBird Куратор тега HTML
    Пока ты спишь - твой конкурент совершенствуется
    именно в вашем случае https://api.jquery.com/addclass/
    а вообще вот 2 функции:
    https://api.jquery.com/remove/
    api.jquery.com/append
    и еще api.jquery.com/replacewith
    Ответ написан
    2 комментария
  • Как отправить json с помощью fetch?

    NeiroNx
    @NeiroNx
    Программист
    вроде уже 100500 раз обсуждалось: ПеХеПе не парсит такой тип данных, надо парсить ручками:
    $postData = file_get_contents('php://input');
    $data = json_decode($postData, true);
    
    var_dump($data);
    Ответ написан
    Комментировать
  • Как в PHP проверить наличие интерфейса не создавая экземпляра?

    @MIKEk8 Автор вопроса
    interface MyInterface { }
    class MyClass implements MyInterface { }

    $interfaces = class_implements('MyClass');
    if($interfaces && in_array('MyInterface', $interfaces)) {
    // Class MyClass implements interface MyInterface
    }
    За ответ спасибо adamsafr:
    Подходит?
    stackoverflow.com/questions/20169805/php-check-if-...
    Ответ написан
    Комментировать
  • Какое окружение вы используете для разработки php?

    nefone
    @nefone
    Junior PHP разработчик
    Среди IDE сейчас что то лучше PHPStrom сложно найти.
    Окружение на свой вкус лучше собирать с помощью Docker - первое время будет сложно, но потом поймаете кайф.
    Если с базами данных пока сложно работать через консоль, можно использовать DBeaver
    И желательно работать c git, так же если нужен графический интерфейс Git Kraken

    мол xampp использовать для нормальной разработки себе дороже

    Совершенно верно, ибо сложно будет тестировать как будет вести себя код на рабочем сервере. Может быть несовместимость операционных систем на сервере и локальных, а так же версий PHP и ипользуемых баз данных.
    Ответ написан
    5 комментариев
  • Какое окружение вы используете для разработки php?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    - openserver for Windows
    - docker for linux
    - phpStorm
    - dbForgeStudio
    - git + SourceTree Attlasian
    Ответ написан
    Комментировать
  • Какое окружение вы используете для разработки php?

    pOmelchenko
    @pOmelchenko
    php-developer
    phpstorm как ide на все случаи жизни
    - xdebug
    - подключение к базам
    - тестирование http запросов

    vagrant или docker для развертывания окружения максимально похожего на продакшен сервера

    По поводу того серьезно ли сегодня использовать xampp, или нет – зависит от решаемых задач. Например, реализация скриптов связанных сугубо с бэкэндом и не требующих хитровыдуманной и развесистой архитектуры приложения (я про всякие рабиты кафки редисы и прочие субд), лично мне, достаточно развернутого на хосте php. Писать реализацию и покрывать тестами этого уже достаточно. А что? Вебсервер php из коробки имеет, вместо большой базы можно воспользоваться sqlite – с этим набором уже можно пилить какие-то вебсервисы которые и на фронте что-то смогут показывать :)
    Ответ написан
    Комментировать
  • Какое окружение вы используете для разработки php?

    @dimuska139
    Backend developer
    Использую следующее:
    1. PhpStorm (IDE). Чтобы он работал быстро, проекты следует держать на SSD.
    2. DBeaver для просмотра содержимого и структуры БД (сами изменения в БД делаю через миграции)
    3. Postman для того, чтобы дёргать эндпоинты, смотреть ответы и заголовки
    4. Docker в связке с docker-compose

    В качестве СУБД обычно использую PostgreSQL, для кеша - Redis. Но это вообще много от чего зависит уже.
    Ответ написан
    2 комментария
  • Как найти сделки у контакта в Битрикс?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Во-первых, сделки получаются методом crm.deal.list. То что вы указали (crm.lead.list) это Лиды.

    Во-вторых, увы в облачной версии нельзя так искать, только по primary контакту.
    А поле CONTACT_IDS действительно есть, но оно больше в коробке и не для всех методов используется.
    Ответ написан
    1 комментарий
  • Легковесная CMS для создания документации или книги?

    olmerlv
    @olmerlv
    Кто в цари крайний? Никого? Тогда я первым буду!
    Пожалуйста.
    https://getgrav.org/ >>> https://getgrav.org/downloads/skeletons >>>

    https://github.com/getgrav/grav-skeleton-rtfm-site

    Скачайте их скелетон, который будет работать из коробки.
    learn.getgrav.org так будет смотреться.

    Незачто.
    Ответ написан
    Комментировать
  • Локальная бд без установки?

    Cryden
    @Cryden
    webdesign, webdevelopment. Мой сайт: fun-wiki.ru
    1 комментарий
  • Какое самое наилучшее приложение для чтения книг на android?

    Сейчас со многих перечисленных читалок перешел на ReadEra, очень уж удобный.
    Ответ написан
    Комментировать
  • Таблица wp_postmeta весит более 1 гига, что делать?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Вчера вечером как раз в телеграм канале задавался вопрос :)

    SELECT meta_key, meta_value, length(meta_value) 
    FROM wp_postmeta 
    ORDER BY length(meta_value) DESC
    LIMIT 10;


    - этот запрос покажет вам 10 самых тяжелых записей в этой таблице
    - изменяя LIMIT можно посмотреть больше/меньше записей
    - length(meta_value) покажет вес значения в байтах

    В итоге это позволило найти какие-то ненужные тяжелые записи в таблице и после чистки с 1+ гига уменьшилось до 300Мб.
    Ответ написан
    3 комментария
  • Как сделать option в select :selected с помощью js?

    NikitaShishkin
    @NikitaShishkin
    Вот из-за таких ответов самому приходится вспоминать как это делается
    $('select option:eq(0)').prop('selected',true)

    В eq ставится номер нужного option начиная с 0, т.е X или X-1
    Ответ написан
    1 комментарий
  • При выборе PHP фреймворка стоит ли обращать внимания на тесты скорости?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    В текущий момент поддерживаю достаточно большой проект на фалконе, который был написан до меня. Так вот, всем кто там дрочил на сишные либы фалкона, мое вам имхо, основаное на годе поддержки этого проекта:

    1) Оно мегахреново переносится и очень криво становится на свежие системы. Корме того что половина гайдов по установке устарела, но все еще лежит на оф. сайте, гайды сообщества противоречат друг-другу, 90% из них не работает, а про некоторые дистрибутивы можете просто забыть, там они работать просто не будут.

    2) Оно все работает as is и хрен ты посмотришь как работает родная вьюшка/конторллер "внутри", а доки не сказать чтобы хорошо описаны, комьюнити слабенькое, многие вещи сделаны спорно, а поправить или что-то подкрутить дело неблагодарное.

    3) Теперь про самое интересное - скорость работы. Так вот, вся это мутотень про память и прочие плюшки на нормальном сервере не ощущается вообще, то есть переходя определенный предел мощности/вооруженности сервера скорость практически сравнялась с нативом (использовался ларавел и Уии на том же сервере, по замерам - плюс-минус то же по скорости, и чуть больше по памяти (центос, 64гб оперативы, 4 проца, нжинкс, пхп 7.2). Короче выгода была на ветке пхп 5.+, сейчас его актуальность практически равна нулю.

    4) В моем случае по приходу сервер регулярно падал при "серьезной" нагрузке (20-30рпс), в чем я изначально предположил вину старых модулей фалкона, но по факту оказалось что 99% нагрузки вносили ожидания запросов к бд, некоторые из которых были по 7-15 минут, а некоторые куски кода создавали по 80+ запросов с 1 страницы, просто дозапрашивая какие-то данные для вьюшки в цикле. Предыдущий "кудесник" кормил руководство отмазками типа - "мало памяти, железо слабое, все плохо, а то бы летало...". "Магия плохого железа" закончилась после оптимизации запросов и доведения самых тяжелых до 0,5 секунды, а так же выборки всех данных в 1-2 запроса с нормальными джоинами.

    5) Основной вопрос всегда сводится к жадности - взять что-то побыстрее из софта, сэкономив на хостинге/оборудовании. И оно всегда не работает так, по ряду факторов, которые достаточно очевидны.
    Ответ написан
    5 комментариев
  • Какие книги читать для изучения CSS3/HTML5/JS с нуля?

    Xalon
    @Xalon
    Хочу заметить, что возможности более ранних версий HTML4 и CSS2, были включены в версии HTML5 и CSS3. Хотя и есть некоторые изменения, авторы книг обычно об этом упоминают.
    На первых четырех этапах изучения, необходимо проделывать тоже, что и автор (установка текстового редактора, написание тегов, стилей и тд) и париться о чем-то более сложном не стоит.
    Мой алгоритм изучения, имеет следующий порядок:
    1) Прочесть книгу Мэтью Макдональда "Веб-разработка. Исчерпывающее руководство" 4 издание. По данной книге можно получить общее представление о HTML, CSS, JavaScript и других интересных моментах как, публикация/продвижение/монетизаци сайта, привлечение посетителей и ведение блога.

    2) Посмотреть бесплатные курсы HTML4 и CSS2 Евгения Попова (курсам почти 10 лет, но они все еще актуальны, ибо все что в них рассматривается, используется на практике):
    - курс по HTML
    - курс по CSS

    3) Теперь можно перейти к более детальному рассмотрению HTML5 и CSS3. И начать изучение я рекомендую именно с CSS3, так как большая часть возможностей HTML5 с уклоном на JavaScript. На этом этапе рекомендую книгу Дэвида Макфарланда "Новая большая книга CSS". В сети можно встретить книгу с названием "Большая книга CSS" от того же автора, но это предыдущее издание, нужна именно та, которая идет с припиской "Новая". Кроме основных возможностей CSS, книга познакомит с адаптивной версткой и препроцессором Sass/SCSS.
    В данной книге рассматривается три способа верстки:
    - с использованием float + margin
    - более современный - Flexbox CSS
    - модульная верстка, на примере сетки Skeleton (хотя способы верстки с использованием сетки Bootstrap и СSS Grid в книге не рассматриваются, принцип работы у них одинаков)

    4) Теперь можно переходить к HTML5. К прочтению рекомендую следующие книги:
    - Мэтью Мак-Дональд "HTML5. Недостающее руководство"
    - Шмитт, Симпсон "HTML5. Рецепты программирования"
    Данные книги познакомят не только с изменениями в синтаксисе и семантике HTML5, но с новыми возможностями:
    - формы 2.0
    - добавление HTML5 аудио/видео
    - работа с canvas
    - геолокация
    - добавление в разметку микроданных
    - использование ARIA
    - локальное хранилище (sessionStorage)
    - автономные приложения (appcache)
    - Веб-сокеты (WebSoket)
    - и тд

    5) Теперь у нас есть общее представление о тегах, стилях, текстовых редакторах, о том как это работает и взаимосвязано между собой, что можно, а что нельзя делать. Пора приступать к практике. Нужно сверстать хотя бы 2-3 страницы из готовых макетов. Теперь по порядку, что нужно сделать:
    а) Установить текстовый редактор и настроить его под себя (Notepad++, Sublime Text, Atom, Brackets и тд). На первых этапах подойдет Notepad++, в дальнейшем стоит перейти на что-то более функциональное. Так же рекомендую установить плагин Emmet для Notepad++ и ознакомиться как он работает.
    б) Установить основные браузеры, для тестирования верстки (с IE по начало можно не заморачиваться)
    в) Установить графический редактор, для открытия готовых макетов (Photoshop, Figma, Avocode, Sketch). На первых порах использовать Photoshop.
    г) На первых порах сделать простенькую заготовку для верстки (структуру папок, где будут размещаться стили картинки, скрипты и один файл index.html). В дальнейшем стоит обратить внимание на HTML5 Boilerplate, ну а дальше на Gulp и Webpack
    д) Скачать готовые бесплатные psd-макеты
    г) Сверстать макеты тремя разными способами:
    - float+ margin
    - flexbox
    - bootstrap или CSS Grid
    е) Ну а теперь находим свежий видеоурок на Youtube, где автор верстает тем или иным способом, смотрим и повторяем. В качестве справочников использовать сайты:
    - htmlbook.ru
    - webref.ru
    - caniuse.com

    6) В дальнейшем по мере приобретения опыта, всегда будет хотеться упростить задачу или сделать процесс верстки комфортным, в этом случае нужно смотреть в сторону:
    - gulp, webpack
    - IDE для разработки, н-р, WebStorm
    - препроцессоры HTML (HAML, Pug), препроцессоры CSS (Sass, Less, Stylus)
    - git
    - именование классов CSS
    - среды для тестирования
    - тд

    7) Переходим к JavaScript. Книг конечно много, но я выделю следующие.
    Книги на начальном этапе:
    - Дэвид Макфарланд "JavaScript и jQuery. Исчерпывающее руководство"
    - Фримен Эрик, Робсон Элизабет "Изучаем программирование на JavaScript"
    Книги для углубленного изучения:
    - Онлайн учебник, в том году обновилась информация
    - Дэвид Флэнаган "JavaScript. Подробное руководство"
    - Хавербеке Марейн "Выразительный JavaScript. Современное веб-программирование"

    8) Переходим на практику, как и в случае с HTML и CSS. Как вариант можно добавить динамичности в сверстанные страницы. Написать простенькую игру, н-р, змейка. Или же найти сайт с задачками, необязательно по JavaScript. Как вариант можно воспользоваться сайтом CodeWars

    9) Так же как и в случае с HTML и CSS, по мере приобретения опыта, всегда будет хотеться упростить задачу или сделать процесс верстки/разработки комфортным, в этом случае нужно смотреть в сторону:
    - библиотек (jquery, backbone.js и тд)
    - фреймворков (React, Vue, Angular)
    - Coffeescript, TypeScript
    - средства тестирования (н-р: Mocha JS)
    - средства документирования (н-р: JSDoc)
    - средства проверки кода (н-р: JSLint)
    - и тд
    Ответ написан
    Комментировать