Задать вопрос
Ответы пользователя по тегу Yii
  • Поддерживает ли kartik mpdf шрифт verdana из коробки или нужно подключать дополнительно?

    @dev-sasha
    Вот так можно добавить новый шрифт (если его нет из коробки в mPDF)
    $defaultConfig = (new \Mpdf\Config\ConfigVariables())->getDefaults();
    $fontDirs = $defaultConfig['fontDir'];
    
    $defaultFontConfig = (new \Mpdf\Config\FontVariables())->getDefaults();
    $fontData = $defaultFontConfig['fontdata'];
    
    $pdf = new Pdf([
            ...
            'options' => [
                ...
                'fontDir' => array_merge($fontDirs, [
                    Yii::getAlias('@webroot/fonts/'),
                ]),
                'fontdata' => array_merge($fontData, [
                     "roboto" => [
                         'R' => "Roboto-Regular.ttf",
                         'I' => "Roboto-Regular.ttf",
                         'B' => "Roboto-Bold.ttf",
                      ],
                ]),
                'default_font' => 'roboto'
            ],
            ...
    ]);


    Вот также информация в официальной документации mPDF
    Ответ написан
    2 комментария
  • Как написать "левый" и "правый" LIKE в ActiveQuery Yii2?

    @dev-sasha
    "Обычный" LIKE:
    User::find()->andWhere(['like', 'username', '89'])->all();
    // SQL: `username` LIKE '89'


    Левый/Правый/Обычный LIKE (осторожно, возможны SQL-инъекции)
    User::find()->andWhere(['like', 'username', '%89', false])->all();
    User::find()->andWhere(['like', 'username', '89%', false])->all();
    User::find()->andWhere(['like', 'username', '%89%', false])->all();


    Левый/Правый/Обычный LIKE (Без SQL-инъекций, то есть входные значения $str будут обработаны )
    User::find()->andWhere([new \yii\db\Expression('username LIKE :param', [':param' => '%' . $str]),])->all();
    User::find()->andWhere([new \yii\db\Expression('username LIKE :param', [':param' => $str . '%']),])->all();
    User::find()->andWhere([new \yii\db\Expression('username LIKE :param', [':param' => '%' . $str . '%']),])->all();
    Ответ написан
    2 комментария