代码不适用于其他php版本

时间:2019-01-22 14:49:09

标签: php

我的部分代码有问题。在我的本地计算机上,此代码有效,我有php7

$totals = array_values(
    array_count_values(
        array_map(function($x)
        {
            return explode('-', $x)[0];
        }, $arraySKU2)
    )
);

这是我在具有PHP版本5.3.3的服务器上得到的错误。

  

解析错误:语法错误,意外的'['in

我试图在Internet上找到解决方案,但没有成功。 有人可以帮我吗,我不知道如何写更改?

1 个答案:

答案 0 :(得分:2)

这不起作用:

 return explode('-', $x)[0];

尝试将explode的结果辅助到一个变量,并从该变量访问第一个元素。

根据Python: Justifying NumPy array,在5.4.0之前的版本中无法通过这种方式访问​​数据

最后,您的代码如下所示:

$totals = array_values(array_count_values(array_map(function ($x) {
    $explodedValues = explode('-', $x);
    return $explodedValues[0];
}, $arraySKU2)));