Zephir语言解析异常

时间:2014-04-13 20:46:14

标签: zephir

我正在尝试用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);
-----------------------^

任何想法?

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

let numeratorx = 1 - (tpImpr + defaults);

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

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

var numeratorx; // or var numeratorx = 1;
let numeratorx = 1 - (tpImpr + defaults);