以下代码产生Unsupported operator types
错误:
$data = $modelData + array_merge($data, $recordData);
问题是,$modelData
,$data
和$recordData
都是数组。内容可以在这里找到:http://bin.cakephp.org/view/1477154570
所以我不得不怀疑使用+运算符或其他一些潜在问题是否存在限制。
编辑:精确的PHP版本:Win 7 64位上的PHP 5.3.10
答案 0 :(得分:1)
您正在尝试合并2个数组,然后与第三个数组合并。 对我来说没问题。如果我遗失任何东西,请告诉我。 这是您给定数据的尝试代码。 http://codepad.org/hA654cQE
答案 1 :(得分:0)
也许这是一种内置语言功能而不是功能。所以它可能只接受变量形式的数组,而不是函数的结果。 (虽然不确定。)
不。测试了这段代码,它起作用了:
php > $a = array('w' => 'hello');
php > $b = array('x' => 'world');
php > $c = array('y' => '!', 'z' => 1337);
php > $d = $a + array_merge($b, $c);
php > var_dump($d);
array(4) {
["w"]=>
string(5) "hello"
["x"]=>
string(5) "world"
["y"]=>
string(1) "!"
["z"]=>
int(1337)
}
在PHP 5.4.3 CLI上。 Arch Linux。