Yii2 调用 Yii::$app-> 时发生奇怪的错误异常

Yii2 strange errorException on call Yii::$app->

我正在我的应用程序中实现一个用于手柄滑块的 yii2 模块,项目的基本结构是 yii2 高级模板。 我有一个 class 图像扩展了 gii 生成的另一个模型 class, Images.php

<?php

 namespace common\modules\sliders\models;

 use Yii;
 use common\modules\sliders\models\base\Images as Im;

 /**
  * This is the model class for table "images".
  *
  */
 class Images extends Im
 {
    const UPLOAD_URL = Yii::$app->getModule('sliders');
 }

costant UPLOAD_URL 将是我上传图像的路径,这个值存储在我的模块的配置参数中,因此配置模块以在另一个应用程序中使用更加简单。 当我创建我的图像对象的实例时,我收到的奇怪错误是:

syntax error, unexpected '$app' (T_VARIABLE), expecting identifier (T_STRING) or class (T_CLASS)

这行感兴趣的人:

const UPLOAD_URL = Yii::$app->getModule('sliders');

这是为什么?

P.s.: 我知道 UPLOAD_URL 这样不会获取配置参数的值,但我被错误阻止了。

谢谢。

不能动态地给常量赋值

你可以做到这一点

const UPLOAD_URL ='yourpath\yourmodul\;

或者如果您需要动态使用函数

public  function getUploadUrl() {
  return Yii::$app->getModule('sliders');
}