0

我正在尝试用 zephir 语言编译下面的代码,它给了我 Parse 错误。我不确定我做错了什么。

 public static function calculateDiscrepancy(tpImpr, liImpressions, defaults) {
    var numeratorx = 1-(tpImpr + defaults);
    if numeratorx != 0 && liImpressions != 0 {
          return (double)(numeratorx / liImpressions) * 100;
    }else{
    return 0;
    }
}

错误

Zephir\ParseException: Syntax error in /var/www/vhosts/app/advertisingcalculator.zep on line 58

     var numeratorx = 1-(tpImpr + defaults);
-----------------------^

有任何想法吗?

4

1 回答 1

1

你可以试试这个:

let numeratorx = 1 - (tpImpr + defaults);

编辑:删除星号。1在和运算符之间留一个空格,在运算--和左括号之间留一个空格(

var仅用于声明并且值必须是静态的,然后您可以使用以下方法设置动态值let

var numeratorx; // or var numeratorx = 1;
let numeratorx = 1 - (tpImpr + defaults);
于 2015-02-01T00:26:52.227 回答