yii2 相关问题

Yii2是Yii PHP框架的最新版本(Yii是一个基于组件的高性能PHP框架),版本2.0.18于2019年4月23日发布。

部分 PHP 页面未通过 AJAX 调用刷新

我有一个php页面,需要使用AJAX刷新其中的一部分。 函数重新加载图表(数字){ console.log("正在重新加载图表:", number); var xmlhttp = new XMLHttpRequest();...

回答 1 投票 0

如何从 yii2 symfonymailer 获取错误消息

我正在使用 Yii2 使用 yii2-symfonymailer 发送电子邮件。 如果出现错误,它会从 send() 方法返回 false,因此我可以检查 sendind 是否成功。 我的问题是: 我怎样才能得到...

回答 1 投票 0

Yii2 中未显示 Highcharts 图表

我从函数 ReportsController::getStudentYearwiseAvgHeightsProvince() 获取数组数据,格式如下: 数组 ( [0] => 数组 ( [名称] => 俾路支 [数据] => 数组 ( [0] =...

回答 1 投票 0

Yii2 验证图像帖子作为数据 url

我需要验证作为数据网址上传的图像,其格式为: {配置文件:“数据:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAA ...McAAAAAASUVORK5CYII =”} 我的配置文件模型有以下规则: ...

回答 1 投票 0

自动设置活动项目

我的应用程序中有一个菜单: Html::img('@web/images/logo-top.png', ['id' => 'logo']), 'brandUrl' => Yii::$app->homeUrl, “选项”=>...

回答 2 投票 0

利用Yii2.0复选框列表进行父子关系模型

我有一个问题模型和答案模型,其中问题与答案是一对多关系。如何在Yii2中实现checkboxlist,使其以如下形式显示: 形式: 问题1

回答 1 投票 0

Yii2 Kartik GridView 属性中的处理函数

在我的Kartik GridView 视图文件中,我尝试处理ExpandRowColumn 的detailRowCssClass 属性的函数。无论设置如何,(例如应用空函数或返回

回答 1 投票 0

yii2 更新验证规则

我有一个模型和验证规则: User 类扩展 ActiveRecord 实现 IdentityInterface { ... 公共函数规则() { 返回 [ [['用户名','密码','电子邮件'],'

回答 1 投票 0

无法实例化组件或类“yii\gii\Module”

我刚刚在 Mac 操作系统上创建了新的 Yii 2 应用程序。我使用的PHP版本是7.3版本。 Composer 安装工作正常,但是当我尝试使用命令 php yiiserve 启动应用程序时,我得到以下信息...

回答 2 投票 0

Yii 2 创建和更新验证规则遇到问题

在 Yii 1 中,活动记录模型的新实例自动具有“插入”场景,从数据库检索的活动记录模型自动具有“更新”场景。我发现...

回答 1 投票 0

在 yii2 中添加自定义字体 kartik yii-mpdf 后,config_custom.php 应该放在哪里

创建自定义配置文件以更改 mpdf-yii2 中的字体类型后,我应该将该文件放在哪里以及如何调用它。 这是custom_config.php 创建自定义配置文件以更改 mpdf-yii2 中的字体类型后,我应该将该文件放在哪里以及如何调用它。 这是custom_config.php <?php require_once __DIR__ . '/vendor/autoload.php'; $defaultConfig = (new Mpdf\Config\ConfigVariables())->getDefaults(); $fontDirs = $defaultConfig['fontDir']; $defaultFontConfig = (new Mpdf\Config\FontVariables())->getDefaults(); $fontData = $defaultFontConfig['fontdata']; $mpdfConfig = new \Mpdf\Mpdf([ 'mode' => 'utf-8', 'format' => [190, 236], 'tempDir' => __DIR__ . '/web/css/fonts', 'fontDir' => array_merge($fontDirs, [ __DIR__ . 'web/css/fonts/tajawal' ]), 'fontdata' => $fontData + [ 'tajawal' => [ 'R' => "Tajawal-Regular.ttf", 'L' => "Tajawal-Light.ttf", 'B' => "Tajawal-Bold.ttf", 'useOTL' => 0xFF, 'useKashida' => 75, ], ], 'default_font' => 'tajawal' ]); 这是 /config/web.php 中该库的配置 'pdf' => [ 'class' => Pdf::classname(), 'format' => Pdf::FORMAT_A4, 'orientation' => Pdf::ORIENT_PORTRAIT, 'destination' => Pdf::DEST_BROWSER, 'cssFile' => '@vendor/kartik-v/yii2-mpdf/src/assets/kv-mpdf-bootstrap.min.css', 'cssInline' => '.row { margin: 5px 0px 0px 0px !important; padding: 0px !important; }', 'methods' => [ 'SetTitle' => 'Title', ], ], 以及controller.php中的这段代码 $pdf = Yii::$app->pdf; $pdf->methods = [ 'SetTitle' => $pdfTitle , ]; $mpdf = $pdf->api; $mpdf->setAutoBottomMargin = 'pad'; if($language == 0) { $mpdf->SetDirectionality('ltr'); } else { $mpdf->SetDirectionality('rtl'); } $pdf->content = $content; return $pdf->render(); 我正在尝试此代码添加了选项 'pdf' => [ 'class' => Pdf::classname(), 'format' => Pdf::FORMAT_A4, 'orientation' => Pdf::ORIENT_PORTRAIT, 'destination' => Pdf::DEST_BROWSER, 'cssFile' => '@vendor/kartik-v/yii2-mpdf/src/assets/kv-mpdf-bootstrap.min.css', // 'marginLeft'=>0, // 'marginRight'=>0, // 'marginFooter'=>20, 'cssInline' => '.row { margin: 5px 0px 0px 0px !important; padding: 0px !important; }', 'methods' => [ 'SetTitle' => 'Title', ], 'options' => [ 'config' => $_SERVER['DOCUMENT_ROOT'].'/css/fonts/config-fonts.php', ], 查看kartik\mpdf\Pdf类源代码。它创建自己的 Mpdf 对象实例。因此,当您使用 custom_config.php 时,在 Yii::$app->pdf 中创建自己的实例不会对您有帮助。 看看如何在 Mpdf 类中创建 Pdf 实例,在 options 组件属性覆盖某些值后,其 Mpdf 属性中设置的任何内容都将作为构造函数参数传递到 Pdf 中。这意味着您在配置 Mpdf 组件时,需要在 custom_config.php 属性中设置要传递给 options 中的 Pdf 构造函数的任何内容。 为了保持您的config/web.php干净,您可以在额外文件中准备选项,例如config/pdf.php: $defaultConfig = (new Mpdf\Config\ConfigVariables())->getDefaults(); $fontDirs = $defaultConfig['fontDir']; $defaultFontConfig = (new Mpdf\Config\FontVariables())->getDefaults(); $fontData = $defaultFontConfig['fontdata']; return [ // your font configurations 'fontDir' => array_merge($fontDirs, [ dirname(__DIR__) . '/web/css/fonts/tajawal', // the dirname() is used here because __DIR__ points to `config` directory. ]), 'fontdata' => $fontData + [ 'tajawal' => [ 'R' => "Tajawal-Regular.ttf", 'L' => "Tajawal-Light.ttf", 'B' => "Tajawal-Bold.ttf", 'useOTL' => 0xFF, 'useKashida' => 75, ], ], // keep defaults that are set up in Pdf::$options 'autoScriptToLang' => true, 'ignore_invalid_utf8' => true, 'tabSpaces' => 4, ]; 如您所见,我省略了 mode、format、tempDir 和 default_font 选项,因为这些选项被 Pdf 组件属性覆盖,因此我们需要在那里设置它们。 您不需要 require vendor/autoload.php,因为在加载配置之前它已经包含在 web/index.php 文件中。 现在我们需要在 Pdf 中的 config/web.php 组件设置中使用此文件。 'pdf' => [ 'class' => Pdf::classname(), 'format' => Pdf::FORMAT_A4, 'orientation' => Pdf::ORIENT_PORTRAIT, 'destination' => Pdf::DEST_BROWSER, 'cssFile' => '@vendor/kartik-v/yii2-mpdf/src/assets/kv-mpdf-bootstrap.min.css', 'cssInline' => '.row { margin: 5px 0px 0px 0px !important; padding: 0px !important; }', 'methods' => [ 'SetTitle' => 'Title', ], 'mode' => Pdf::MODE_UTF8, // we will use constant defined in Pdf class instead of plain text 'tempPath' => dirname(__DIR__) . '/web/css/fonts', // tempDir uses tempPath property instead. Make sure the path to temp dir matches actual directory structure 'defaultFont' => 'tajawal', 'options' => require __DIR__ . '/pdf.php', // here we use the extra file with pdf configuration we've prepared ], 这应该确保 Mpdf 组件中的 Pdf 实例是使用您设置的配置创建的。

回答 1 投票 0

Yii2 使用两个外键获取字段的关系

我在使用两个外键从表中获取字段时遇到问题。 解释了下面使用表的关系。 用户表有许多公司(company_id)。 Company 表有company_id。 设施

回答 1 投票 0

Yii2 - 通过唯一字段获取一行时的 Oracle 性能问题

我使用 Yii2,版本 2.0.35,apaoww/yii2-oci8 版本 **1.0.**0 连接到 Oracle DB 我有一个存储用户的表,大约有 800 万行。该表有一个唯一索引“

回答 1 投票 0

CraftCMS从3升级到4的问题

我正在尝试将 CraftCMS 3 升级到 4 版本,直到数据库迁移步骤成功完成, 当我尝试运行 php craft migrate/all 命令时出现以下迁移错误, 列后缀

回答 1 投票 0

Yii2-ArrayHelper 更改数组索引

我有一个数组如下: [ 0 => [ '姓名' => '卡' 'id' => '0' ] 1 => [ '名称' => '手机' 'id' => '1' ] 2 => [ ...

回答 2 投票 0

如何在 Yii-2 应用程序中添加验证码?

我正在尝试将验证码添加到登录表单中。 我的环境: 伊伊2 PHP 5.4.45 版本 IIS 10.0 Windows 10 在 login.php、LoginForm.php 和 SiteController.php 中,我添加了以下内容(仅显示

回答 0 投票 0

在 Yii2 中从带有特殊字符的 ANSI 文本文件读取数据会移位值,为什么?

我的问题与此线程相关:How to use a text file as database in Yii2 我已经设法从结构化 ANSI 编码文本文件中读取数据(没有 csv,但列的位置和长度...

回答 1 投票 0

Yii2 ListView 中的第一个和最后一个项目

我在视图中有一个典型的 ListView 小部件,如下所示: 公共函数actionView($id) { $model = $this->findModel($id); $dataProvider = 新 \yii\data\ActiveDataPro...

回答 2 投票 0

Yii2 中 $with 和 $joinWith 有什么区别以及何时使用它们?

API文档中明确指出 $joinWith - 此查询应连接的关系列表 $with - 执行此查询时应使用的关系列表 ...

回答 4 投票 0

YII2 Elasticsearch 数据库配置

我已经安装了 yii2 和 Elasticsearch、Logstash、Kibana。除了与 YII2 的交互之外,该设置运行良好。 以下是./config/db.php 的内容 我已经安装了 yii2 和 Elasticsearch、Logstash、Kibana。除了与 YII2 的交互之外,设置运行良好。 以下是./config/db.php的内容 <?php return [ 'components' => [ 'db' => [ 'class' => 'yii\elasticsearch\Connection', 'user' => 'admin', 'password' => 'admin', 'nodes' => [ ['http_address' => '127.0.0.1:9200'], // configure more hosts if you have a cluster ], ], ] ]; 此配置不起作用,以下是错误的第一行。 无效配置 – yii ase\InvalidConfigException “db”组件的配置必须包含“class” 元素。 在 /var/www/hostings/yiiphp/tools/vendor/yiisoft/yii2/di/ServiceLocator.php ...... 我找不到相关信息来解决这个问题。我做错了什么? file ./config/db.php 应包含在主配置文件中,在您的情况下名为 web (看来您正在使用基本应用程序模板) 换句话说 - 查看文件 ./config/web.php 然后找到该行: 'db' => ... 并将其替换为 'db' => require(__DIR__ . '/db.php'), 最后,你的db.php应该是这样的: <?php return [ 'class' => 'yii\elasticsearch\Connection', 'user' => 'admin', 'password' => 'admin', 'nodes' => [ ['http_address' => '127.0.0.1:9200'] ] ]; 对我来说这也很奇怪,你想使用 elastic 组件作为数据库组件,但这当然取决于你。 您可以在配置文件中使用以下代码: ' elasticsearch' => [ 'class' => yii\elasticsearch\Connection::class, 'auth' => ['username' => 'elastic', 'password' => 'changeme'], 'nodes' => [ ['http_address' => 'localhost:9200'], // configure more hosts if you have a cluster ], // set autodetectCluster to false if you don't want to auto detect nodes 'autodetectCluster' => false, 'dslVersion' => 7, // default is 5 ],

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.