如何在Yi2中的highcharts的“格式化程序”中传递php值

azpvetkf  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(181)

我想在Yi2中传递high chart的工具提示for matter选项中的php值
我正在使用Miloschman模块来显示高位图表https://github.com/miloschuman/yii2-highcharts
在这里,我将截图pass php变量附加到high chart的工具提示>格式化选项
下面是代码示例

<?php 
use miloschuman\highcharts\Highcharts;
use yii\web\JsExpression;
$a = "Here its the variable";
echo Highcharts::widget([
 'options' => [
    'tooltip' => [
         'valueSuffix' => '',                     
         'backgroundColor'=> null,
         'borderWidth'=> 0,
         'shadow'=> false,
         'shared'=> false,
         'useHTML'=> true,
         'pointFormat'=> $this->render('tooltip2'),
         'formatter'=>new JsExpression('function(){return <?php echo $a ?>}'),
         'style'=> [ 'opacity'=> 1, 'background'=> "rgba(246, 246, 246, 1)" ],
    ],
]
]);?>

但它向我显示了未捕获的语法错误:控制台中意外的标记“<”,并且高位图表未显示
谢谢

jvlzgdj9

jvlzgdj91#

你在传递什么 JsExpression 构造函数是一个php字符串。所以,您可以用和在任何其他php字符串中完全相同的方式包含变量。您只需要记住,如果要包含的变量是字符串,则必须在其周围加引号。

$a = "Here is the variable";
new JsExpression("function(){ return '$a'; }")

如果这样做,字符串参数将传递给 JsExpression 课程包括:

function() { return 'Here is the variable'; }

相关问题