Рубрика: Backend

  • Zadarma API. Работающие примеры запросов php \ bash.

    API сервиса телефонии Zadarma достаточно сильно усложнено и может вызвать проблемы — приведу несколько проверенных и работающих примеров обращения к API. Первый и самый очевидный вариант — официальная либа на php. Видел много вопросов у людей по её работе, собственно поэтому и решил написать статью с разными вариантами запросов. Работа с библиотекой сводится к нескольким […]

  • Composer. Ошибка «Allowed memory size» или out of memory

    Out of memory при composer update возникает с завидной регулярностью и лечится также каждый раз разными способами. Опишу несколько вариантов, которые мне помогали. Ниже два варианта, которые должны помочь Вам. Указываем лимит -1, чтобы снять ограничения для процесса. 1) Вариант 1 php -d memory_limit=-1 which composer update 2) Вариант 2 COMPOSER_MEMORY_LIMIT=-1 composer update Если ничего […]

  • PhpMyAdmin. Ошибка Incorrect format parameter при импорте

    Встретив ошибку «Incorrect format parameter» при импорте в phpMyAdmin сходу тяжело понять, что именно не так и в чём беда. Но решение очень простое, хоть и не очевидное. На самом деле решение проблемы кроется в изменении трех параметров в Вашем php.ini где найти php.ini). Итак, увеличьте максимальный размер загружаемого файла: upload_max_filesize=128M post_max_size=128M Увеличьте, при необходимости, […]

  • Laravel. Ошибка artisan clear-compiled return error code 255

    При попытке выполнить установку или апдейт composer на проекте Laravel недавно получил ошибку artisan clear-compiled return error code 255. Встретил её впервые, но, быстро удалось решить — об этом речь пойдет в этой статье. Итак, для решения выполните следующие шаги: 1) удалите composer.lock 2) удалите папку vendor 3) удалите файлы services.php и compiled.php с папки […]

  • MySQL: Ошибка Got a packet bigger than «max_allowed_packet» bytes

    Ошибка Got a packet bigger than «max_allowed_packet» bytes может возникнуть при попытке загрузить большой дамп. Варианты решения ниже в статье. Итак, предлагаю два варианта решения: 1) Исправить параметр в конфиге MySQL. Находим и открываем файл конфигурации MySQL (unix-системах он, вероятно находится тут: etc/my.cnf) После этого в нём исправляем параметр: max_allowed_packet = 999M Сохраняем файл, перегружаем […]

  • Laravel. Как отсортировать ассоциативный массив?

    Используя Laravel у нас под рукой всегда есть удобный и короткий способ сортировки ассоциативного массива по одному из ключей. Ниже очень короткий пример решения этой задачи. К примеру у нас есть массив вот такого вида: $array = [ [ ‘id’ => 1, ‘name’ => ‘Item 1’, ‘count’ => 10 ], [ ‘id’ => 2, ‘name’ […]

  • Laravel 5. Как получить экземпляр текущего контроллера\метода?

    Задача, довольно простая, но на поверхности нет очевидного решения, поэтому в этой статье коротко о том, как достать текущий контроллер\метод из любого места приложения. Итак, контроллер в приложении доступен так: app(‘request’)->route()->getController() ; Метод, который сейчас выполняется, соответственно, вот так: app(‘request’)->route()->getAction() ; Вот и всё) Если что-то не работает — пишите комментарии!

  • Laravel. Как изменить данные запроса перед валидацией?

    Столкнулся с интересно задачей — валидировать разделенные запятой значения. Comma-separated данные приходят в одном поле — поискав варианты решения нашел оптимальное, о котором и хочу рассказать. В классе Request и всех его потомках есть интересный метод merge. Этот метод позволяет изменить полученные данные. Например, до валидации. К примеру, в ситуации, когда Вам приходит список id, […]

  • Решаем ошибку Lock wait timeout exceeded; try restarting transaction.

    В этой статье приведу короткий и самый быстрый вариант решения ошибки «Lock wait timeout exceeded; try restarting transaction». Конечно, если ошибка у Вас в системе — нужно искать и решать корень проблемы — например, незакрытые транзакции. Я же приведу алгоритм быстро, в моменте, решения. Итак, если Вы выполняете запросы, не заходя на сервер MySql — […]

  • Laravel. Как вывести запрос со значениями (query with bindings)?

    Laravel предлагает нам удобный метод toSql() для отображения подготовленного запроса. Но он выводит знаки вопроса вместо значений. О том, как вывести итоговый подготовленный запрос речь в этой статье. На просторах интернета (на авторство не претендую) мною был найден достаточно простой вариант, который я обернул в метод и повсеместно использую в своих проектах. Метод выглядит так: […]