我有以下代码可以获取可变数量数组的交集。
$intersection = call_user_func_array('array_uintersect', $params);
使用测试数据,这非常有效。但是,当使用真实数据(这是一个更大的数据集,使用相同的代码,但在hhvm
and上运行时,比较三个或更多数组nginx
时出现以下错误:
Invalid operand type was used: array_uintersect expects array(s)
比较两个数组效果很好。
我检查了$params
服务器上的输出,它肯定有正确的值。的所有元素$params
都是数组,最后一个元素是具有值的数组:array_compare
这是我的自定义数组比较函数的名称。
什么可能导致此错误?
更新:
我将 HHVM 更新到最新的夜间版本,还升级了我的服务器内存,看看它是否有帮助。然而,它没有。
更新:
我现在意识到 Laravel Homesteadhhvm
默认不使用,并且在打开它之后:
sites:
- map: homestead.app
to: /home/vagrant/Code/project
hhvm: true
使用我的测试数据也重现了该错误。关闭 hhvm 时,交叉口完美运行。