Vmedmen, понял а с правами на файл info_cat.log все впорядке? возможна ситуация когда файл был создан от имени одного пользователя а Ваше консольное приложение запущено от имени другого пользователя
beetlezilla, ну тогда могут быть другие причины отсутствия внешних ключей, от объективный до простой некомпетентности предыдущих разработчиков, поэтому причину лучше уточнить у предыдущих разработчиков
lagoy:
1. Проверяем наличие расширений PHP указанных в инструкции, если они установлены - все ок. если нет - устанавливаем
2. Заходим через консоль в папку проекта
3. Выполняем composer require intervention/image
4. Расширение установлено
5. Выполняем composer remove intervention/image
6. Расширение удалено
hollanditkzn: 4-й параметр указывает в какой кодировке у Вас строка. Его указывать не обязательно. Если он не указан будет считаться что строка задана в кодировке установленной по умолчанию
1. Да интерфейс описывает обязательства, и класс использующий его должен зависит от этих обязательств, а не от того как они реализованы с программной точки зрения, например:
interface ConfigInterface
{}
class Config implements ConfigInterface
{}
class DB
{
public function __construct(ConfigInterface $config)
{}
}
Таким образом класс DB знает только о том что может класс Config, но вообще не зависит от его реализации
2. Будет зависит от конфига, но это ничего не меняет...
3. Тогда тут нарушение принципа Inversion Of Control - класс который зависит от DB его же и создает, вместо того что бы ожидать его передачи с наружи
Виктор Уманский: во первых в actionIndex не обязательно задавать $id он и так содержится в Yii::$app->request->queryParams, во вторых где в поисковой модели свойство $id и фильтрация по нему?