Skip to content

Conversation

TheAlexLichter
Copy link
Contributor

Change Arr::wrap function to return an empty array when providing null as argument. This is the same way Ruby handles it and also more intuitive IMO

@sisve
Copy link
Contributor

sisve commented Oct 19, 2017

The semantics of the word "wrap" indicate, to me, that I will get whatever value I pass in wrapped in an array. Sure, there's a special-case for arrays, and that annoys me, but I disagree on adding more of these special cases.

Why shouldn't count(Arr::wrap($value)) === 1 for non-arrays?

@@ -601,6 +601,10 @@ public static function where($array, callable $callback)
*/
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change comment: "If the given value is not an array, wrap it in one." is no longer true in this case.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done ☺️

@TheAlexLichter
Copy link
Contributor Author

@sisve I understand your thoughts. In the end, it's a design decision. But for me, it appears to be more useful like Ruby implemented it.

@taylorotwell taylorotwell merged commit b345fdf into laravel:master Oct 19, 2017
@taylorotwell
Copy link
Member

I do like matching other ecosystems where possible.

@thecrypticace
Copy link
Contributor

This also matches the array cast in PHP. (array) null === []

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants