@@ -295,17 +295,19 @@ private function getSetters(object $dataObject): array
295295 if (!isset ($ this ->settersCache [$ class ])) {
296296 $ dataObjectMethods = get_class_methods ($ class );
297297 // use regexp to manipulate with method list as it use jit starting with PHP 7.3
298- $ setters = explode (
299- ', ' ,
300- strtolower (
301- // (0) remove all not setter
302- // (1) add _ before upper letter or digits
303- // (2) remove set_ in start of name
304- // (3) add name without is_ prefix
305- preg_replace (
306- ['/(^|,)(?!set)[^,]*/S ' ,'/(.)([A-Z]|[0-9]+)/S ' , '/(^|,)set_/iS ' , '/(^|,)is_([^,]+)/is ' ],
307- ['' , '$1_$2 ' , '$1 ' , '$1$2,is_$2 ' ],
308- implode (', ' , $ dataObjectMethods )
298+ $ setters = array_filter (
299+ explode (
300+ ', ' ,
301+ strtolower (
302+ // (0) remove all not setter
303+ // (1) add _ before upper letter or digits
304+ // (2) remove set_ in start of name
305+ // (3) add name without is_ prefix
306+ preg_replace (
307+ ['/(^|,)(?!set)[^,]*/S ' ,'/(.)([A-Z]|[0-9]+)/S ' , '/(^|,)set_/iS ' , '/(^|,)is_([^,]+)/is ' ],
308+ ['' , '$1_$2 ' , '$1 ' , '$1$2,is_$2 ' ],
309+ implode (', ' , $ dataObjectMethods )
310+ )
309311 )
310312 )
311313 );
0 commit comments