Советы PHP-разработчика

Блог содержащий короткие заметки касающиеся программирования для web.

Ошибки, их причины и решения

Исправляем ошибки phpstan после обновления Yii2 до 2.0.53

Лучшие практики работы с dropDownList в Yii framework 2

Начиная с версии 2.0.53 в Yii framework добавили дженерики в описание некоторых классов. Это приводит к ошибкам phpstan вида: Method app\controllers\TestController::beforeAction() has parameter $action with generic class yii\base\Action but does not specify its types: T

  • 2025-12-02 19:48:42
читать далее

Docker завершает остановку PHP контейнера с ошибкой Exited (137) для `yii queue/listen`

Разрыв коннекта с ошибкой packet_write_wait: Connection to xxx port 22: Broken pipe

Есть сайт на Yii framework 2 в docker и отдельный контейнер с php-cli, который запускает php yii queue/listen, слушает очередь и выполняет фоновые задачи. При выполнение docker container stop CONTAINER_NAME остановка завершается с кодом ошибки 137.

  • 2025-12-02 09:46:59
читать далее

Разрыв коннекта с ошибкой packet_write_wait: Connection to xxx port 22: Broken pipe

Разрыв коннекта с ошибкой packet_write_wait: Connection to xxx port 22: Broken pipe

При работе с некоторыми серверами по ssh возникает ошибка. В большинстве случаев это происходит из-за превышения "таймаута бездействия". Решить эту проблему можно следующим образом.

  • 2017-11-16 19:14:29
читать далее

Зависание Ubuntu 16.04 при переходе в ждущий режим

Зависание Ubuntu 16.04 при переходе в ждущий режим

На днях все-таки решился установить свеженькую Ubuntu, но столкнулся со следующей проблемой. При переходе в ждущий режим отключается экран, но компьютер по-прежнему продолжает работать. Вернуть его обратно к жизни можно только перезагрузкой. Сейчас расскажу, как это побороть.

  • 2016-06-10 20:42:52
читать далее

Ошибка JSON_ERROR_SYNTAX в php 7

JSON_ERROR_SYNTAX в php 7

Недавно в одном из проектов обнаружилась проблема при тестировании на PHP 7. Тесты прогоняются на PHP 5.5.x, 5.6.x, 7.0.x и hhvm-3.12.x, но проваливаются они только на PHP 7. Проблема оказалась в функции json_decode(). А теперь немного подробнее.

  • 2016-03-23 18:34:24
читать далее

Ошибка Illegal offset type in isset or empty после обновления composer

Ошибка Illegal offset type in isset or empty после обновления composer

Сегодня решил обновить композер в системе. Все прошло гладко, но при попытке выполнения composer update в проекте появилась ошибка Illegal offset type in isset or empty. Делать rollback к предыдущей версии композера не круто, поэтому я решил отыскать другое решение.

  • 2016-02-28 09:44:57
читать далее

Ошибки - неотъемлемая часть разработки программного обеспечения. Это факт и с этим поделать ничего нельзя. Можно только сократить их количество использую дебаггеры, IDE и прочие средства. Ошибки появляются по разным причинам и иногда кажется, что они возникают из неоткуда и вводят в ступор.

В данном разделе своего блога я решил собрать некоторые очевидные и не очевидные ошибки, описать причины их возникновения и предложить пути решения.