I took a look into the source code of laravel and found the following code:
$attributes = $this->addDateAttributesToArray(
$attributes = $this->getArrayableAttributes()
);
as you can see, there are assignments to the $attributes variable. One of them is in the parameter list. Albeit this is valid syntax, its immediately overwritten by the "outer" assignment.
Why would someone write code like this? Is there a special behavior I am not aware of?