protected function recursiveToArray($item)
    {
        if (is_array($item)) {

            foreach ($item as &$subitem) {
                $subitem = $this->recursiveToArray($subitem);
            }

            unset($subitem);

            return $item;
        }

        if ($item instanceof Arrayable) {
            return $item->toArray();
        }

        return $item;
    }
protected function recursiveToArray($item)
    {
        if (is_array($item)) {

            foreach ($item as &$subitem) {
                $subitem = $this->recursiveToArray($subitem);
            }

            unset($subitem);

            return $item;
        }

        if ($item instanceof Arrayable) {
            return $item->toArray();
        }

        return $item;
    }
protected function recursiveToArray ( $ item ) { if ( is_array ( $ item ) ) { foreach ( $ item as & $ subitem ) { $ subitem = $ this -> recursiveToArray ( $ subitem ) ; } unset ( $ subitem ) ; return $ item ; } if ( $ item instanceof Arrayable ) { return $ item -> toArray ( ) ; } return $ item ; }
Recursively converts parameter to array

@param mixed $item
@return array|string
Recursively converts parameter to array