@@ -479,6 +479,8 @@ public function forget($keys)
479
479
*/
480
480
public function get ($ key , $ default = null )
481
481
{
482
+ $ key ??= '' ;
483
+
482
484
if (array_key_exists ($ key , $ this ->items )) {
483
485
return $ this ->items [$ key ];
484
486
}
@@ -497,8 +499,8 @@ public function get($key, $default = null)
497
499
*/
498
500
public function getOrPut ($ key , $ value )
499
501
{
500
- if (array_key_exists ($ key , $ this ->items )) {
501
- return $ this ->items [$ key ];
502
+ if (array_key_exists ($ key ?? '' , $ this ->items )) {
503
+ return $ this ->items [$ key ?? '' ];
502
504
}
503
505
504
506
$ this ->offsetSet ($ key , $ value = value ($ value ));
@@ -539,6 +541,7 @@ public function groupBy($groupBy, $preserveKeys = false)
539
541
is_bool ($ groupKey ) => (int ) $ groupKey ,
540
542
$ groupKey instanceof \UnitEnum => enum_value ($ groupKey ),
541
543
$ groupKey instanceof \Stringable => (string ) $ groupKey ,
544
+ is_null ($ groupKey ) => (string ) $ groupKey ,
542
545
default => $ groupKey ,
543
546
};
544
547
@@ -600,7 +603,7 @@ public function has($key)
600
603
{
601
604
$ keys = is_array ($ key ) ? $ key : func_get_args ();
602
605
603
- return array_all ($ keys , fn ($ key ) => array_key_exists ($ key , $ this ->items ));
606
+ return array_all ($ keys , fn ($ key ) => array_key_exists ($ key ?? '' , $ this ->items ));
604
607
}
605
608
606
609
/**
@@ -617,7 +620,7 @@ public function hasAny($key)
617
620
618
621
$ keys = is_array ($ key ) ? $ key : func_get_args ();
619
622
620
- return array_any ($ keys , fn ($ key ) => array_key_exists ($ key , $ this ->items ));
623
+ return array_any ($ keys , fn ($ key ) => array_key_exists ($ key ?? '' , $ this ->items ));
621
624
}
622
625
623
626
/**
0 commit comments