Laravel:array_merge():参数#2不是数组错误

问题描述 投票:0回答:10

异常开始出现在所有视图中,当我尝试运行

composer update
时,它总是以

结束
{"error":{"type":"ErrorException","message":"array_merge(): Argument #2 is not an array","file":"\/laravel\/framework\/src\/Illuminate\/Foundation\/ProviderRepository.php","line":188}}
laravel laravel-4 composer-php
10个回答
36
投票

经过大量搜索和探索“app”文件夹中的每个文件,似乎 一个文件已损坏

删除app/storage/meta/services.json并重新运行

composer update
,这应该可以解决问题。


7
投票

有时仅删除

app/storage/meta/services.json
并运行
composer update
并不能解决错误:
array_merge(): Argument #2 is not an array error
。至少就我而言,没有。

大多数时候,当你搞砸了

bootstrap/cache/services.json
文件时,就会发生这种情况。并且运行
composer update
不会生成
services.json
文件。

要生成

services.json
文件,需要删除之前的
bootstrap/cache/services.json
文件并运行
php artisan serve
。然后它将生成一个新的 services.json` 文件。

希望对某人有帮助!


3
投票

我在全新安装时也遇到了类似的问题。

我是这样解决的: 删除了

bootstrap/cache/**services.php**
然后我 用浏览器访问网站,生成了一个新的services.php,然后就可以了。


2
投票
  1. 删除引导文件夹
  2. git重置——硬
  3. 作曲家安装
  4. 完成

0
投票

只有一个

composer update
对我有用。


0
投票

您可能只是忘记将compact('var')作为第二个返回视图参数

返回视图(“path.to.view”,compact('var')


0
投票

我遇到了这个问题,我的问题是composer.json中的“pusher/pusher-php-server”版本与我的laravel版本不匹配。因此,作曲家更新和删除缓存对我不起作用。

我想也许这些信息可以帮助某人。


0
投票

我得到了同样的错误 - “array_merge(): Argument #2 is not an array error”。运行“composer dump-autoload”,然后运行 npm run dev 立即解决了问题。无需更新composer、npm 等。


0
投票

在我的例子中,app/storage/meta/services.json 由于某种原因是空的


0
投票

我删除了 bootstrap/cache/services.json 并运行了composer update,之后它对我有用

© www.soinside.com 2019 - 2024. All rights reserved.