Argument passed to function must be callable, array given : <p>I'm trying to run a method on each element inside a collection. It's an object method residing in the same class:</p>

<pre><code>protected function doSomething()
{
    $discoveries = $this-&gt;findSomething();
    $discoveries-&gt;each([$this, 'doSomethingElse']);
}

protected function doSomethingElse($element)
{
    $element-&gt;bar();
    // And some more
}
</code></pre>

<p>If I precede the call on <code>Collection::each</code> with the check <code>is_callable([$this, 'doSomethingElse'])</code> it returns true, so apparently it is callable. The call itself however throws an exception:</p>

<blockquote>
  <p>Type error: Argument 1 passed to Illuminate\Support\Collection::each() must
     be callable, array given, called in ---.php on line 46</p>
</blockquote>

<p>The method trying to be called can be found <a href="https://github.com/illuminate/support/blob/master/Collection.php#L241-L250" rel="noreferrer">here</a>.</p>

<p>I'm bypassing this by just passing a closure that itself simply calls that function, but this would definitely a much cleaner solution and I can't find out why it throws the error.</p>
