The behaviour when a falsy value is passed as the $locale is undocumented, but it appears that it returns the primary language of the default system language. In my case: Locale::getPrimaryLanguage(null);Returns 'en'. So make sure to test $locale before passing it to the method.